5个实用的Linux Tail命令示例

简短的介绍。 以下是tail命令的一些实际示例,这些示例应允许您在Linux上更有效地使用tail命令。

Cat命令是显示文件内容的小命令。 但是,您可能并不总是能够显示大文件的所有行。 tail命令有助于解决这种情况。

tail命令是什么?

顾名思义,tail命令可打印出单个文件或多个文件的最后部分。 默认情况下,tail命令显示输入文件的最后十行。 tail命令还用于实时读取日志文件。

tail命令的语法为:

tail [options] [files]

5个实用的Linux Tail命令示例

让我们通过一些实际示例来学习如何在Linux中使用tail命令。 我们将在本文中使用此文本文件:

Загадочное происшествие на Брайтон Бич
Тайный Противник
Убийство по ссылкам
Человек в коричневом костюме
Секрет дымовых труб
Погода в Кацапетовке
Большая четверка
Странный пассажир полуночного экспресса
Гарри Поттер
Все на Матч
Морские дьяволы
Статьи о Linux
Искусственный интеллект
SQL для начинающих
Дистрибутив Linux
Убийство в восточном экспрессе
Незаконченный Портрет
Почему они не спросили Эванса?
Три Акта Трагедии
Смерть в облаках

如果不带任何选项使用tail命令,它将打印最后10行。 这是tail命令的默认行为。

tail agatha.txt
Морские дьяволы
Статьи о Linux
Искусственный интеллект
SQL для начинающих
Дистрибутив Linux
Убийство в восточном экспрессе
Незаконченный Портрет
Почему они не спросили Эванса?
Три Акта Трагедии
Смерть в облаках

如果文件少于十行,则仅显示可用行。 如果最后几行为空,则它们仍将视为有效。

但是您不必满足于使用默认的tail命令。 那不是全部。 让我们一次看看尾命令的最常见用法。

1.使用tail命令打印最后N行

要查看最后N行而不是默认的10行,可以使用tail命令,如下所示:

tail -n N <filename>

例如,如果您想在示例文件中查看tail命令的最后5行,则可以这样使用它:

tail -n 5 agatha.txt
Убийство в восточном экспрессе
Незаконченный Портрет
Почему они не спросили Эванса?
Три Акта Трагедии
Смерть в облаках

提示您也可以只使用tail -N而不是tail -n N来显示文件的最后N行。

2.打印从行号N开始的所有行

如果要查看以行号N开头的所有行,可以在此处使用+选项。

tail -n +N <filename>

在我们的示例文件中,如果要查看从第7行开始的所有行,可以像这样使用它:

tail -n +7 agatha.txt
Большая четверка
Странный пассажир полуночного экспресса
Гарри Поттер
Все на Матч
Морские дьяволы
Статьи о Linux
Искусственный интеллект
SQL для начинающих
Дистрибутив Linux
Убийство в восточном экспрессе
Незаконченный Портрет
Почему они не спросили Эванса?
Три Акта Трагедии
Смерть в облаках

3.使用tail命令使用多个文件

tail命令允许您同时使用多个文件。 所有标准的tail命令选项都适用于多个文件。

tail -n N <file1> <file2> <file3>

结果将连接到所有文件,默认情况下,文件名显示在以“ ==>”开头的行上。

例如,如果您想查看sherlock.txt和agatha.txt文件的最后三行,则如下所示:

tail -n3 sherlock.txt agatha.txt
==> sherlock.txt <==
Приключение благородного холостяка
Приключение Берилл Коронет
Приключение Алисы в стране чудес

==> agatha.txt <==
Почему они не спросили Эванса?
Три Акта Трагедии
Смерть в облаках

提示您可以使用带有-q选项的安静模式从输出中删除文件名。

4.使用tail命令实时监视文件 [Очень полезно для мониторинга журналов]

假设您有一个文件,并且已向其中添加了新内容。 使用tail命令可以显示所有添加到文件中的新行。

您可以为此使用-f选项。

tail -f <log-file>

该命令将首先显示文件的最后10行,然后在将新行添加到文件时更新输出。

它广泛用于实时查看日志文件。 这也许是tail命令最实际的用法。

提示如果使用-F而不是-f选项,tail命令将等待创建输入文件(如果尚不存在),然后实时显示文件内容。

5.对管道使用tail命令

tail命令可以与其他使用管道的命令一起使用。

例如,如果目录中文件太多,而您只想查看最后3个更改的文件,则可以这样使用它:

ls -ltr | tail -n3

在上面的命令中,ls -lrt以相反的时间顺序列出所有文件。 然后tail命令进一步解析该输出,并且仅显示ls命令输出的最后三行,因此我们获得了三个最新修改文件的列表。

温馨提示:显示带有行号的tail命令输出

行号有助于理解和解析输出。 假设您已经显示了文件的最后20行,但是您还希望查看它们的行号,以便可以看到文件中的公共行。

不幸的是,没有内置选项可以显示带数字的tail命令的输出。

但这并不意味着您无法使用tail命令显示行号。 为此,您可以使用管道的力量。 您刚刚在上一节中看到,tail命令可以与管道一起使用。 为什么不在这里使用它。

nl是一种显示带有行号的文件内容的方法。 如果将其与使用管道的tail命令结合使用,则会显示带行号的tail命令显示。

nl <filename> | tail -3

希望您发现tail命令示例有用。 如果您有任何建议或问题,请在下面的评论部分中分享。

Sidebar