前言
前面有学习了查看文件开头的内容,那么自然就会有查看结尾的内容,这个命令不仅可以作为查看结尾的内容,还可实时查看文件更新的状态等信息,让我们一起来看看这个命令的使用吧。
一、命令的介绍
tail命令的功能是用于查看文件尾部的内容,例如会默认显示指定文件的末尾十行,如果指定了多个文件,则会在显示的每个文件内容前面加上文件名加以区分。
当然也有其他的用法,-f参数作用可以持续显示文件的末尾最近的内容,类似于机场候机厅的大屏幕,总会把最新的消息展示给用户,对阅读日志文件尤为适合,而不需要手动去刷新文件。
二、命令的语法及参数
还是一样通过man或者help先提前查看命令的语法和参数信息
用法:tail [选项]... [文件]...
1)语法格式
tail 【选项】 文件
2)常用的参数
-c | 输出文件尾部的N(N为整数)个字节内容 |
-f | 持续显示文件最新追加的内容 |
-F <N> | 与选项“-follow=name”和“--retry”连用时功能相同 |
-n <N> | 输出文件的尾部N(N位数字)行内容 |
--retry | 即是在tail命令启动时,文件不可访问或者文件稍后变得不可访问,都始终尝试打开文件。 |
--pid=<进程号> | 与“-f”选项连用,当指定的进程号的进程终止后,自动退出tail命令 |
--help | 显示指令的帮助信息 |
--version | 显示指令的版本信息 |
三、参考实例
3.1 显示文件尾部的后10行内容
[root@localhost ~]# tail passwd
.....#省略几行信息
user1:x:1001:1001::/home/user1:/bin/bash
grafana:x:988:982:grafana user:/usr/share/grafana:/sbin/nologin
3.2 指定显示文件尾部的后3行内容
[root@localhost ~]# tail -n 3 passwd
ntp:x:38:38::/etc/ntp:/sbin/nologin
user1:x:1001:1001::/home/user1:/bin/bash
grafana:x:988:982:grafana user:/usr/share/grafana:/sbin/nologin
3.3 显示文件尾部的后20个字节内容
[root@localhost ~]# tail -c 20 passwd
afana:/sbin/nologin
3.4 从100个字节开始到结尾
[root@localhost ~]# tail -c +100 /etc/passwd
login
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
3.5 从第40行到结尾
[root@localhost ~]# tail -n +40 /etc/passwd
gnome-initial-setup:x:989:983::/run/gnome-initial-setup/:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
user1:x:1001:1001::/home/user1:/bin/bash
grafana:x:988:982:grafana user:/usr/share/grafana:/sbin/nologin
user2:x:1002:1002::/home/user2:/sbin/nologin
3.6 持续刷新文件尾部的后十行内容
[root@localhost ~]# tail -f /var/log/messages
3.7 tail -f、tail -F、tailf三者的区别
tail -f
等同于–follow=descriptor;常用于日志内容的跟踪,根据文件描述符进行追踪,当文件改名或被删除,追踪停止。
tail -F
等同于–follow=name --retry;根据文件名进行追踪,并保持重试,即该文件被删除或改名后,如果再次创建相同的文件名,会继续追踪。
tailf
等同于tail -f -n 10 ;与tail -f不同的是,如果文件不增长,它不会去访问磁盘文件。
总结
tail的用法也是特别容易理解的,既是显示文件末尾的内容,在参数上和head是有一些相似之处的,同样-n参数是用的较多的,还有-f参数平时偶尔也有用到。