这 尾巴 Linux 中的命令显示任何文件的最后几行/块,行/块的数量取决于使用命令时传递的选项。
tail 命令默认输出
当没有提供选项时,它会打印最后一个 10 作为参数提供的所有输入文件的行。
[email protected]:~# cat input.txt 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
[email protected]:~# tail input.txt 11 12 13 14 15 16 17 18 19 20
除此之外,我们还可以使用 +
符号表示该位置相对于输入的开头。 例如, tail +15 input.txt
印刷 input.txt
从第 15 行开始,直到文件末尾。
[email protected]:~# tail +15 input.txt 15 16 17 18 19 20
Linux tail 命令选项
选项名称 | 描述 |
-b ${在一个} | 显示最后一个 在一个 512 字节块(最后一个 512*NUM 字节被打印) |
-c ${在一个} | 显示最后一个 在一个 文件的字节数(最后一个 在一个 文件的字节被打印) |
-F | 跟踪文件描述符(仅采用单个文件名作为参数) |
-F | 与 f 相同,但也检查文件描述符对应的文件名是否被重命名 |
-n ${在一个} | 显示最后一个 在一个 文件的行 |
-r | 以相反的顺序显示输入。 它可以与其他选项结合使用 |
1.逐块(-b)选项
格式 : tail -Nb input1.txt input2.txt ...
这用于显示最后一个 N
所有输入文件的 512 字节块。
[email protected]:~# tail -1b input.txt 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
2.逐字符(-c)选项
格式: tail -c N input1.txt input2.txt ...
这用于显示最后一个 N
所有输入文件的字符(字节)
[email protected]:~# tail -c 10 input1.txt input2.txt ==> input1.txt <== 18 19 20 ==> input2.txt <== 18 19 20
3.行号(-n)选项
格式: tail -n N input1.txt input2.txt ..
或者
格式: tail -N input1.txt input2.txt ..
此选项显示最后 N
所有输入文件的行
[email protected]:~# tail -n 10 input.txt 11 12 13 14 15 16 17 18 19 20
4.详细(-v)选项
格式: tail -v input1.txt input2.txt ..
在该文件的输出之前显示文件头
[email protected]:~# tail -v input1.txt input2.txt ==> input1.txt <== 11 12 13 14 15 16 17 18 19 20 ==> input2.txt <== 11 12 13 14 15 16 17 18 19 20
可以组合多个选项 -v
与相应的文件头一起显示
下面的命令结合了 -n
选项 -v
, 显示最后 5 行以及文件头
[email protected]:~# tail -rn5 input.txt ==> input.txt <== 16 17 18 19 20
5.标志选项(-f,-F)
这些主要用于日志文件,或者需要跟踪某些重要文件时。 这不会在到达文件末尾后停止,而是跟踪文件描述符并在文件描述符发生更改时更新输出。 该命令只有在文件描述符关闭或收到中断信号时才能停止。
结论
我们了解了如何使用 tail 命令以不同的方式显示文件的内容,具体取决于指定的选项。
参考
Linux 手册页:https://man7.org/linux/man-pages/man1/tail.1.html