Linux 中的 tail 命令及示例 - Linux 命令行教程
Linux 中的 tail 命令是查看文本文件时需要的最基本命令之一。如果您是使用命令行的初学者,那么 tail 命令是一个很好的学习命令,还有 head 命令,后者是其相反的命令。 tail 用于打印多个文件或指定文件的最后10行。 tail具有有趣且方便的功能,可以用来监视对文件的更改。
tail 特别重要的是,它允许您将其监视功能用于系统管理和脚本编写等目的。尽管 tail 非常重要,但它并不是一个复杂的命令,就像许多其他常用命令一样。
tail 仍然比我们迄今为止所描述的更复杂一点,有许多不同的选项可用于列出文件的内容,其中包含更多细微差别和规范。您会发现其中一些选项非常有用,但这并不是说 tail 本身还不能涵盖广泛的管理情况。
您可能认为在 GUI 文本编辑器中查看文件会容易得多,但事实并非如此。掌握 tail 命令将使您能够在许多不同的微妙场景中以非常特定的方式显示文件内容,比 Linux 新手想象的更容易、更高效。
在本指南中,您将通过示例了解如何在 Linux 中使用 tail 命令。请按照以下步骤了解可与此命令一起使用的各种选项。
在本教程中您将学习:
如何在 Linux 上使用 tail 命令
常用选项
tail 命令打印特定文件中最后 x 行数。默认情况下,它将显示指定文件的最后 10 行。您可以与 tail 一起使用的选项大多只是以特定方式显示文件中的内容以满足某些需求,提供特定的信息,您会发现这些信息非常方便,比简单地浏览更有用。 GUI 文本编辑器。
Linux 中的 tail 命令基本示例
单独运行 tail 命令,无需任何其他选项,只会打印当前工作目录中文件的最后 10 行,这只是表示终端当前所在目录的技术方式在。
$ tail cars.txt
请注意,尽管此文件包含 20 个不同汽车品牌的列表,但只需运行 tail 命令(不带任何额外选项)即可打印文件中存在的最后 10 个品牌。使用如下所示的这个方便的小选项,您可以使用 tail 命令来生成一个输出,该输出将显示文件中特定数量(假设为 15)的行。在我们的例子中,这是汽车品牌。
$ tail -n 15 cars.txt OR $ tail -15 cars.txt
tail 命令的一个有趣但同样独特的特征是,它也可以用
+
符号代替我们之前的-
符号来编写例子。它的补充命令head没有这个。使用+
符号和指定的数字编写命令将使命令显示从我们用数字指定的行开始的数据。$ tail +8 cars.txt
我们的 tail 命令现在已输出文件中的所有行,从第 8 行开始。
到目前为止,我们已经向您展示了 tail 命令可用于显示单个文件的数据。但是 tail 命令能够一次从多个文件输出数据。使用
-q
选项,您就可以做到这一点。$ tail -q cars.txt states.txt
正如我们在本文开头提到的,系统管理员通常使用 tail 命令来监视各种程序运行时日志文件的更改。 tail 命令本身无法执行此操作(没有任何选项)。这就是
-f
选项的用武之地。该选项的工作方式几乎与 tail 完全相同;唯一的区别是,当添加新行以及给定文件的最后 10 行时,它会更新。$ tail -f apache.log
注意
您始终可以使用 man 命令来阅读有关 tail 命令及其官方文档的更多信息。单击上一个链接可查看如何打开 Linux 系统上任何命令的手册页。
高级用法
tail 命令非常简单,但正如您在本文的示例部分中所观察到的,它包含很多选项。其中许多选项都不太引人注目,甚至一些经验丰富的系统管理员也可能不知道它们。然而,它们绝对可以在各种情况下派上用场。在本指南的这一部分中,我们将向您展示一些我们认为有用的 tail 命令鲜为人知的选项。
Linux 高级示例中的 tail 命令
使用
-v
选项显示特定文件中的数据,该文件的名称位于数据前面。$ tail -v cars.txt
tail 命令可以与管道
|
一起使用。这意味着 tail 命令可以生成输出,并且另一个命令可以与此输出结合使用以实现各种目的。例如,如果您在 tail 之后添加管道,则带有-r
选项的sort
命令可以与 tail 命令一起使用强>。$ tail cars.txt | sort -r
使用 tail 命令的另一种方法是显示文本文件中指定字节数的数据。例如,让我们使用
cars.txt
文件并使用 tail 命令来显示文件中数据的最后 50 个字节。$ tail -c 50 cars.txt
结束语
在本指南中,我们全面了解了 tail 命令,对于经常在命令行上查看文本文件的用户和管理员来说,掌握该命令至关重要。通过附加 -f
选项,它对于监视正在进行更改的日志文件特别有用。