tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容.


1.命令格式;

tail[必要参数][选择参数][文件]  

2.命令功能:

用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

3.命令参数:

-f 循环读取
-q 不显示处理信息
-v 显示详细的处理信息
-c<数目> 显示的字节数
-n<行数> 显示行数
--pid=PID 与-f合用,表示在进程ID,PID死掉之后结束. 
-q, --quiet, --silent 从不输出给出文件名的首部 
-s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒


4.使用实例:

实例1:显示文件末尾内容

命令:

tail -n 5 log2017.txt

输出:


复制代码
代码如下:

lifei@ubuntu:~$ tail -n 5 log2017.txt
2017-08
2017-09
2017-10
2017-11
2017-12
lifei@ubuntu:~$ 

说明:

显示文件最后5行内容


实例2:循环查看文件内容

命令:

tail -f  log2017.txt

输出:


复制代码
代码如下:

lifei@ubuntu:~$ ping 192.168.197.130 > log2017.txt  &
[24] 1459
lifei@ubuntu:~$ tail -f log2017.txt 
PING 192.168.197.130 (192.168.197.130) 56(84) bytes of data.
64 bytes from 192.168.197.130: icmp_seq=1 ttl=64 time=0.034 ms
64 bytes from 192.168.197.130: icmp_seq=2 ttl=64 time=0.043 ms
64 bytes from 192.168.197.130: icmp_seq=3 ttl=64 time=0.044 ms
64 bytes from 192.168.197.130: icmp_seq=4 ttl=64 time=0.032 ms
64 bytes from 192.168.197.130: icmp_seq=5 ttl=64 time=0.033 ms
64 bytes from 192.168.197.130: icmp_seq=6 ttl=64 time=0.030 ms
64 bytes from 192.168.197.130: icmp_seq=7 ttl=64 time=0.023 ms
64 bytes from 192.168.197.130: icmp_seq=8 ttl=64 time=0.024 ms
64 bytes from 192.168.197.130: icmp_seq=9 ttl=64 time=0.027 ms
64 bytes from 192.168.197.130: icmp_seq=10 ttl=64 time=0.033 ms
64 bytes from 192.168.197.130: icmp_seq=11 ttl=64 time=0.026 ms
64 bytes from 192.168.197.130: icmp_seq=12 ttl=64 time=0.059 ms

说明:

ping 192.168.197.130 > log2017.txt & //在后台ping远程主机。并输出文件到log2017.txt;这种做法也使用于一个以上的档案监视。用Ctrl+c来终止。


实例3:从第5行开始显示文件

命令:

tail -n +5 log2017.txt

输出:


复制代码
代码如下:
lifei@ubuntu:~$ tail -n +5 log2017.txt 
2017-05
2017-06
2017-07
2017-08
2017-09
2017-10
2017-11
2017-12
lifei@ubuntu:~$ 
==============================

补充:


补充:
跟tail功能相似的命令还有:
cat 从第一行開始显示档案内容。
tac 从最后一行開始显示档案内容。
more 分页显示档案内容。
less 与 more 相似,但支持向前翻页
head 仅仅显示前面几行
tail 仅仅显示后面几行
n 带行号显示档案内容
od 以二进制方式显示档案内容


linux ---tail命令 



linux中tail命令---用于查看文件内容 

最基本的是cat、more和less。 
1. 如果你只想看文件的前5行,可以使用head命令,如: 
head -5 /etc/passwd 
2. 如果你想查看文件的后10行,可以使用tail命令,如: 
tail -10 /etc/passwd 或 tail -n 10 /etc/passwd 
tail -f /var/log/messages 
参数-f使tail不停地去读最新的内容,这样有实时监视的效果 用Ctrl+c来终止! 
3. 查看文件中间一段,你可以使用sed命令,如: 
sed -n '5,10p' /etc/passwd 
这样你就可以只查看文件的第5行到第10行。 

tail语法格式: 
    tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ] 
    或者 
    tail [ -r ] [ -n Number ] [ File ] 
使用说明: 
    tail 命令从指定点开始将 File 参数指定的文件写到标准输出。如果没有指定文件,则会使用标准输入。 Number 变量指定将多少单元写入标准输出。 Number 变量的值可以是正的或负的整数。如果值的前面有 +(加号),从文件开头指定的单元数开始将文件写到标准输出。如果值的前面有 -(减号),则从文件末尾指定的单元数开始将文件写到标准输出。如果值前面没有 +(加号)或 -(减号),那么从文件末尾指定的单元号开始读取文件。 
主要参数: 

-b Number 从 Number 变量表示的 512 字节块位置开始读取指定文件。 
-c Number 从 Number 变量表示的字节位置开始读取指定文件。 
-f 如果输入文件是常规文件或如果 File 参数指定 FIFO(先进先出),那么 tail 命令不会在复制了输入文件的最后的指定单元后终止,而是继续从输入文件读取和复制额外的单元(当这些单元可用时)。如果没有指定 File 参数,并且标准输入是管道,则会忽略 -f 标志。tail -f 命令可用于监视另一个进程正在写入的文件的增长。 
-k Number 从 Number 变量表示的1KB 块位置开始读取指定文件。 
-m Number 从 Number 变量表示的多字节字符位置开始读取指定文件。使用该标志提供在单字节和双字节字符代码集环境中的一致结果。 
-n Number 从首行或末行位置来读取指定文件,位置由 Number 变量的符号(+ 或 - 或无)表示,并通过行号 Number 进行位移。 
-r 从文件末尾以逆序方式显示输出。-r 标志的缺省值是以逆序方式显示整个文件。   

如果文件大于 20,480 字节,那么-r标志只显示最后的 20,480 字节。 -r 标志只有   与 -n 标志一起时才有效。否则,就会将其忽略。


示例
要显示notes 文件的最后十行,输入:
 
tail notes要指定从notes 文件末尾开始读取的行数,输入:
tail  -n 20 notes
要从第200 字节开始,每次显示一页notes 文件,输入:
tail  -c +200 notes | pg
要跟踪文件的增长,输入:
tail  -f accounts
这显示accounts 文件的最后十行。tail 命令继续显示添加到accounts 文件中的行。显示会一直继续,直到您按下Ctrl-C 按键顺序来停止。


GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐