Linux tail命令详解

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

大家好,欢迎来到IT知识分享网。

前言

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

Linux tail命令详解

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

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

我们可以使用:tail -n filename

例如:我想看最后2行

则输入 tail -2 test.log

Linux tail命令详解

正确如预期显示。

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

Linux tail命令详解

Linux tail命令详解

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

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

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

总结

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

Linux tail命令详解

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/50157.html

(0)
上一篇 2024-04-24 17:00
下一篇 2024-04-27 09:26

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信