开源是一种精神,分享是一种美德!

tail

相关命令:head
tail - 输出文件的末尾部分

在标准输出上显示每个FILE的最后10行. 如果多于一个FILE,会一个接一个地显示, 并在每个文件显示的首部给出文件名. 如果没有FILE,或者FILE是-,那么就从标准输入上读取.

--retry
    即使tail开始时就不能访问 或者在tail运行后不能访问,也仍然不停地尝试打开文件. -- 只与-f合用时有用.
-c, --bytes=N
    输出最后N个字节
-f, --follow[={name|descriptor}]
    当文件增长时,输出后续添加的数据; -f, --follow以及 --follow=descriptor 都是相同的意思
-n, --lines=N
    输出最后N行,而非默认的最后10行
--max-unchanged-stats=N
    参看texinfo文档(默认为5)
--max-consecutive-size-changes=N
    参看texinfo文档(默认为200)
--pid=PID
    与-f合用,表示在进程ID,PID死掉之后结束.
-q, --quiet, --silent
    从不输出给出文件名的首部
-s, --sleep-interval=S
    与-f合用,表示在每次反复的间隔休眠S秒
-v, --verbose
    总是输出给出文件名的首部
--help
    显示帮助信息后退出
--version
    输出版本信息后退出
    
如果N(字节或者行数)的第一个字符为`+', 那么从每个文件的开头算起的第N项开始显示, 否则, 显示该文件的最后N项. N可以有一个倍数前缀: b表示512,k表示1024,m表示1048576(1兆). 第一个选项 -VALUE 或+VALUE 以-n VALUE或-n +VALUE 方式看待,除非VALUE含有[bkm]后缀倍数 中的一个,在这种情况下,它被看作 -c VALUE 或者-c +VALUE
使用--follow (-f)时,tail默认后接文件描述符, 这意味着即使tail显示的文件改名了,tail仍然可以 追踪到其末尾部分. 如果你确实希望查询文件的实际名而非文件描述符 (例如,日志轮转时), 这种默认的操作就不是你所期望的了. 在这种情况下应使用--follow=name. 这将导致tail通过周期性地重新打开所指定的文件来 追踪其是否被删除了,或者被其他程序重新创建了.
 
[root@linux ~]# tail /etc/passwd   #默认,显示最后10 行。
 
[root@linux ~]# tail -n 2 /etc/passwd   #显示最后2行

[root@linux ~]# tail -q -n k file1 file2 file3   #显示多文件最后k行,并且不显示文件名的文件头

[root@linux ~]# tail -n +k /etc/passwd   #从开头第k行处开始输出。

[root@linux ~]# tail -f /var/log/messages  #参数-f使tail不停地去读最新的内容,因此有实时监视的效果,用Ctrl+c来终止

显示第i行信息: tail -n+i file.txt | head -1,i为行数,如下:
   

# tail -n+10 file.txt | head -1     #显示file.txt的第10行

 

[root@new55 ~]# cat 1.txt  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

[root@new55 ~]# tail 1.txt  
11
12
13
14
15
16
17
18
19
20
[root@new55 ~]# tail -3 1.txt  
18
19
20
[root@new55 ~]# tail -n 3 1.txt  
18
19
20
[root@new55 ~]# tail --lines=3 1.txt  
18
19
20

[root@new55 ~]# tail -n +14 1.txt  
14
15
16
17
18
19
20

评论(3)

    • dzt
      tail -f 查看日志很是不错
      [回复]
    • 小尾_狐狸
      【tail -F fileName】 更适应用实时跟踪日志
      [回复]
    • Zoe
      各位实时跟踪:
      我实验了:
      1、第一个窗体,输入 tail -f test1.doc
      2、另一个窗体,然后用vim test1.doc编辑增加了几行

      接下来,为什么第一个窗体的tail不随之自动更新呢?
      [回复]

评论

名字:
验证码:
获取验证码
内容: