在Linux中使用tail命令[5个示例]在Linux中使用tail命令[5个示例]在Linux中使用tail命令[5个示例]在Linux中使用tail命令[5个示例]
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

在Linux中使用tail命令[5个示例]

发表 admin at 2025年2月28日
类别
  • 未分类
标签

tail 命令是显示文件内容或部分内容的几种方法之一。您还可以使用它实时监控对文件所做的更改。以下是一些常见示例。

在 Linux 中,有几个命令可以查看文件的内容。 Tail 命令就是其中之一。

顾名思义,tail 命令用于打印文件的结尾部分。这在处理对文件末尾进行新更改的配置文件时非常有用。

tail 命令还允许您实时查看对文件所做的更改。这广泛用于在解决问题时实时监控日志文件。

在本教程中,我将通过分享一些实际示例来展示如何使用 tail 命令。

Linux中tail命令的使用方法

要在终端中使用任何命令,必须以正确的语法执行该命令,因此我们首先从其语法开始。

tail [option] [file]

这里,

  • [option] 允许您调整命令的默认行为。

  • [file] 是您输入要与 tail 命令配对的文件名的位置。

为了使事情易于理解,我将使用包含以下行的 Haruki.txt 文本文件:

Hear the Wind Sing (1979)
Pinball, 1973 (1980)
A Wild Sheep Chase (1982)
Hard-Boiled Wonderland and the End of the World (1985)
Norwegian Wood (1987)
Dance Dance Dance (1990)
South of the Border, West of the Sun (1992)
The Wind-Up Bird Chronicle (1994)
Sputnik Sweetheart (1999)
Kafka on the Shore (2002)
After Dark (2004)
1Q84 (2009-2010)
Colorless Tsukuru Tazaki and His Years of Pilgrimage (2013)
Men Without Women (2014)
Killing Commendatore (2017)

当不带任何选项执行 tail 命令时,它会打印文件的最后 10 行:

很明显,如果少于10行,tail命令将默认显示所有行。

但您可以做的不仅仅是这些!让我告诉你怎么做。

尾部命令示例

在本节中,我将分享 tail 命令的不同示例,使用其不同的选项。

您将看到一些命令示例,其中 <> 中有文本。这表明您需要将 < 和 > 中的内容替换为合适的值。

1.打印最后N行

正如我之前提到的,tail 命令默认打印最后十行,但您可能并不总是想要相同的行为。

要打印所需的最后 N 行数,您所要做的就是使用 -n 标志并附加要打印的最后 N 行数:

tail -n <Number-of-last-N-Lines> <File>

例如,在这里,我打印了名为 Haruki.txt 的文本文件的最后三行:

tail -n 3 Haruki.txt

您也可以在此处使用大于 10 的数字。

2. 打印第N行开始的所有内容

因此,如果您想要特定点的输出,这会非常方便。

为此,您必须使用 -n 标志并使用 + 符号附加要打印文件的行号:

tail -n +<Line-number> <File>

假设我想打印文本文件 Haruki.txt 中第五行的所有内容,那么我将使用以下命令:

tail -n +5 Haruki.txt

3. 打印输出的文件名

您可能会发现自己想要使用 tail 命令给出的输出来打印文件名。

一个很好的例子是,当使用 tail 命令将多个文件的输出重定向到单个文件时,并且您想要分离输出。

为此,您必须使用 -v 标志,这将为您提供详细的输出:

tail -v [File]

在这里,我使用了前面的示例,但这一次,我添加了详细输出的选项:

4.通过tail命令使用多个文件

有时,您可能想通过 tail 命令使用多个文件,这非常简单!您所要做的就是使用多个文件名,tail 命令将处理其余的事情:

tail <options> <File-1> <File-2> <File-n> 

例如,这里打印了两个不同文本文件的最后三行:Haruki.txt 和 Premchand.txt:

tail -n 3 Haruki.txt Premchand.txt

如果您仔细观察,它会默认打印文件名,这很好。

如果您想从输出中跳过文件名,请使用 -q 标志(安静模式):

tail -q <File-1> <File-2> <File-n> 

5.实时监控文件的更改

这是 tail 命令的一个优秀特性。您不仅可以看到最后几行,还可以显示添加到其中的任何新行。多么酷啊!

为此,请在 tail 命令中使用 -f(跟随)标志:

tail -f <File>

这是我在单个终端中使用多个窗口的示例。我在一个命令中执行了 tail 命令,在另一个命令中,我使用 echo 命令将文本附加到文件中:

系统管理员和开发人员使用它来实时查看日志文件。它有助于排除故障。

tail -F 是一个鲜为人知但稍微好一点的选项。在某些服务器配置中,日志文件会轮换并创建(再次使用相同的名称)。如果重新创建文件,tail -f 命令将不会跟踪更改。但是,tail -F 将等待文件创建并继续监视它。

很酷!不是吗?

tail 命令选项快速总结

以下是涵盖我在本教程中迄今为止提到的所有内容的简短摘要:

-n <number>

显示从文件末尾开始的 N 行

-n +<number>

打印第 N 行开始的所有内容

-v

在输出标头中包含文件名

-q

从输出中删除文件名

-f

实时监控文件的更改

-F

实时监控更改,等待(重新)创建文件

?️练习你所学到的

如果您想测试您最近学到的 tail 命令知识,这里有一些练习供您使用。

从我们的 GitHub 存储库下载 agatha.txt 文件。

现在执行以下操作。

  1. 打印文件的最后 12 行

  2. 仅打印文件的最后一行

  3. 将文件名添加到输出,同时显示从第 15 行开始的行

  4. 只打印第11行(与head命令结合)

您可以在社区中讨论练习题:

如果您对命令行完全陌生,我们为您提供了一个很好的起点。

? 我们每周都会分享更多 Linux 命令示例。请继续关注更多内容。如果您有任何疑问或建议,评论部分都是您的。

©2015-2025 Norria support@alaica.com