服务器 
首页 > 服务器 > 浏览文章

linux tail 查看日志文件方法

(编辑:jimmy 日期: 2024/11/28 浏览:3 次 )

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

1.命令格式;

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

2.命令功能:

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

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

4.使用实例:

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

命令:

tail -n 5 /var/log/yum.log

输出:

[root@linux linux]# tail -n 5 /var/log/yum.log
Jun 29 14:45:30 Installed: samba-3.6.23-35.el6_8.i686
Jun 29 14:45:31 Installed: 2:xinetd-2.3.14-40.el6.i686
Jun 29 14:45:34 Installed: samba-swat-3.6.23-35.el6_8.i686
Jun 29 14:45:37 Updated: samba-client-3.6.23-35.el6_8.i686
Jun 29 14:45:37 Updated: libsmbclient-3.6.23-35.el6_8.i686
[root@linux linux]#

说明:

显示文件最后5行内容

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

命令:

tail -f /var/log/yum.log

输出:

Jun 22 19:54:08 Updated: PackageKit-device-rebind-0.5.8-26.el6.i686
Jun 22 19:54:09 Updated: rpm-build-4.8.0-55.el6.i686
Jun 29 14:45:24 Updated: samba-winbind-3.6.23-35.el6_8.i686
Jun 29 14:45:24 Updated: samba-winbind-clients-3.6.23-35.el6_8.i686
Jun 29 14:45:28 Updated: samba-common-3.6.23-35.el6_8.i686
Jun 29 14:45:30 Installed: samba-3.6.23-35.el6_8.i686
Jun 29 14:45:31 Installed: 2:xinetd-2.3.14-40.el6.i686
Jun 29 14:45:34 Installed: samba-swat-3.6.23-35.el6_8.i686
Jun 29 14:45:37 Updated: samba-client-3.6.23-35.el6_8.i686
Jun 29 14:45:37 Updated: libsmbclient-3.6.23-35.el6_8.i686

该命令能实时查看日志,并自动刷新日志,让我们看到最新的日志文件,清楚自己的程序的执行过程,方便问题的查找。

补充

用途

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

语法

标准语法
tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]

要以逆序显示行
tail [ -r ] [ -n Number ] [ File ]

描述

tail 命令从指定点开始将File 参数指定的文件写到标准输出。如果没有指定文件,则会使用标准输入。Number 变量指定将多少单元写入标准输出。Number 变量的值可以是正的或负的整数。如果值的前面有+(加号),从文件开头指定的单元数开始将文件写到标准输出。如果值的前面有-(减号),则从文件末尾指定的单元数开始将文件写到标准输出。如果值前面没有+(加号)或-(减号),那么从文件末尾指定的单元号开始读取文件。

Number 变量用于确定计数的起点的单元类型由-b、-c、-k、-m 以及-n 标志确定。如果没有指定其中的任何一个标志,那么tail 命令就会读取指定文件的最后十行,并将其写到标准输出。这与在命令行输入-n 10 是相同的。

-m 标志在单字节和双字节字符环境中提供了一致的结果。当输入是包含多字节字符的文本文件时应谨慎使用-c 标志,因为产生的输出可能不从字符边界开始。

标志

-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 变量表示的行位置开始读取指定文件。

-r

从文件末尾以逆序方式显示输出。-r 标志的缺省值是以逆序方式打印整个文件。如果文件大于20,480 字节,那么-r 标志只显示最后的20,480 字节。

-r 标志只有与-n 标志一起时才有效。否则,就会将其忽略。

退出状态

该命令返回下列的退出值:

0

成功完成。

0
出现错误。

示例

要显示notes 文件的最后十行,输入:

tail notes要指定从notes 文件末尾开始读取的行数,输入:

tail -n 20 notes

要从第200 字节开始,每次显示一页notes 文件,输入:

tail -c +200 notes | pg

要跟踪文件的增长,输入:

tail -f accounts

这显示accounts 文件的最后十行。tail 命令继续显示添加到accounts 文件中的行。显示会一直继续,直到您按下Ctrl-C 按键顺序来停止。

上一篇:从零搭建docker私有仓库的步骤
下一篇:Ubuntu16.04 安装Teamviewer的教程详解
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap