linux tail -f命令作用(Linux tail命令详解)

前言

使用操作系统,文件是我们经常必须要打交道的一个东西。特别是查看文件内容,这里我就给大家介绍一个可自定义在终端查看文件内容的工具 —— tail

简介

tail 命令从指定点开始将文件写到标准输出中。

说白了,就是把你想要显示的文件,从指定位置开始,显示终端屏幕上。

有一个-f选项,通过它可以查看正在改变的日志文件, tail -f filename 会把 filename 最尾部的内容显示在屏幕上,并且不断刷新,这样你看到的一直都会是最新的文件内容,从而方便通过日志实时查看相应软件使用情况

命令格式:

tail [参数] [文件]

参数

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

实例演示

这里我写了个简单的shell脚本,其功能是每隔1秒钟,写入一行数据,具体内容如下:

#!/bin/bash # 从1循环到10000 for((i=1;i<=10000;i++)); do # 将当前时间追加写入 test.log 中 echo `date +“%Y-%m-%d %H:%M:%S”` >> ./test.log # 每移动大流量卡隔1秒执行一次 sleep 1s; done

执行命令:

tail test.log

从图中可以看到,会显示出当前test.log文件的所有内容

那如果我只想打印最后几行呢?

我们可以使用:tail -n filename

例如:我想看最后2行

则输入 tail -2 test.log

正确如预期显示。

再有就是我们上面强调的那个 -f 参数,可以实时显示,因为我们shell中设置的值是10000,短时间内肯定无法执行完成,所以我们现在可以直接 tail -f test.log看看实时效果

如上图,这次回车之后,会发现屏幕一直在变化,因为我的shell是间隔1秒,所以屏幕会每隔1秒输出当前时间,有效地验证了 tail 移动大流量卡-f 实时查看日志的功能。

:看到这里有的同学可能会问:为啥你的命令提示符前面是 [root@haoqixin ~], 而我们的却是[root@loclhost ~]呢?

那是因为我修改了主机名,在Linux中,可以通过hostname或者hostnamectl修改主机名,详细介绍请参考:教你在Linux中修改主机名

总结

有关tail的命令关键点基本就这么多,你,学了吗?


友情提醒: 请添加客服微信进行免费领取流量卡!
QQ交流群:226333560 站长微信:qgzmt2

原创文章,作者:sunyaqun,如若转载,请注明出处:https://www.dallk.cn/57486.html

(0)
sunyaqunsunyaqun
上一篇 2024年7月13日
下一篇 2024年7月13日

相关推荐

发表回复

登录后才能评论