如何在尾部命令中查看Linux文件的结尾

在Linux中有两个非常有用的命令让你看到文件的一部分。 第一个称为head,默认情况下,它向您显示文件中的前10行。 第二个是tail命令,它默认允许您查看文件中的最后10行。

你为什么要使用这些命令? 为什么不使用cat命令查看整个文件或使用诸如nano之类的编辑器?

想象一下你正在阅读的文件有30万行。

想象一下,该文件消耗了大量的磁盘空间。

head命令的常见用法是确保要查看的文件确实是正确的文件。 通常可以通过查看前几行来确定是否正在查看正确的文件。 然后,您可以选择使用编辑器(如nano)来编辑文件。

tail命令对于查看最后几行文件非常有用,并且当您想要查看/ var / log文件夹中保存的日志文件中发生的情况时,该命令非常有用。

本指南将向您展示如何使用tail命令,包括所有可用的开关。

尾部命令的示例用法

如前所述,tail命令默认显示文件的最后10行。

tail命令的语法如下所示:

tail <文件名>

例如,要查看系统的启动日志,可以使用以下命令:

sudo tail /var/log/boot.log

输出将是这样的:

*启动启用剩余的引导时间加密块设备[确定]
*开始保存udev日志并更新规则[确定]
*停止保存udev日志并更新规则[确定]
*语音调度员被禁用; 编辑/ etc / default / speech-dispatcher
*禁用VirtualBox Additions,不在虚拟机中
已禁用; 编辑/ etc / default / saned
*恢复解析器状态... [确定]
*停止System V运行级别兼容性[OK]
*启动MDM显示管理器[确定]
*停止发送活动以指示普利茅斯已启动[确定]

如何指定要显示的行数

也许你想看到超过文件的最后10行。 您可以使用以下命令指定想要查看的行数:

sudo tail -n20

上面的例子会显示文件的最后20行。

另外,您也可以使用-n开关在文件中指定起始点。 也许你知道文件中的前30行是注释,而你只是想看到文件中的数据。 在这种情况下,您可以使用以下命令:

sudo tail -n + 20

tail命令经常与more命令一起使用,以便您一次可以读取文件。

例如:

sudo tail -n + 20 | 更多

上述命令从文件名发送最后20行,并将其作为输入传递给more命令:

您还可以使用tail命令显示一定数量的字节而不是行:

sudo tail -c20

再次,您可以使用相同的开关从一个特定的字节数开始显示,如下所示:

sudo tail -c + 20

如何监视日志文件

有许多脚本和程序不会输出到屏幕上,但会在运行时追加到日志文件中。

在这种情况下,您可能希望在日志文件发生更改时对其进行监视。

您可以使用以下tail命令来检查日志如何每隔几秒更改一次:

sudo tail -F -s20

您还可以使用tail来继续监视日志,直到进程死亡,如下所示:

sudo tail -F --pid = 1234

要查找进程的进程ID,可以使用以下命令:

ps -ef | grep <程序名>

例如,假设您正在使用nano编辑文件。 您可以使用以下命令找到nano的进程ID:

ps -ef | grep nano

命令的输出会给你一个进程ID。 假设进程ID是1234。

您现在可以使用以下命令针对纳米编辑的文件运行尾部:

sudo tail -F --pid = 1234

每次将文件保存在nano中时,尾部命令将在底部拾取新行。 该命令仅在纳米编辑器关闭时停止。

如何重试尾巴命令

如果您在尝试运行tail命令时收到错误,因为由于某些原因无法访问,那么您可以使用retry参数继续重试,直到文件可用。

sudo tail --retry -F

这只能与-F开关一起使用,因为您需要关注要重试的文件。

概要

本指南显示了tail命令的更常见用法。

要了解有关tail命令的更多信息,可以使用以下命令:

男人的尾巴

你会注意到我在大多数命令中都包含了sudo 。 只有当您没有像普通用户一样的权限来查看文件并且您需要提升的权限时,才需要这样做。