我text.txt
在 Ubuntu 中有一个文件。
我想观看该文件以tail
获取文件的最后内容。
tail -f text.txt
该命令返回所有内容。
所以我把它改为:
tail -f -n 1 text.txt
但又是同样的结果。
我用以下命令检查文件行:
wc -l text.txt
当内容附加到文件时,行号计数会发生变化。
首先,什么是错的?
答案1
tail -f
打印文件的最后 10 行。一旦到达文件末尾,它就会等待并打印稍后附加的所有内容。这就是原理F以下文件的增长。
如果您希望始终“打印文件的最后 10 行”,那么这并没有明确定义,因为它取决于检查的时间。如果有一个程序一次打印一行,并且每次都tail
立即打印,tail
是随时打印文件的最后 10 行。
如果您想定期显示文件的最后几行,但在快速增长时跳过行,则需要采用与以下不同的方法。例如,tail
循环调用。不要使用,-f
因为您实际上并不想遵循该文件。
while sleep 1; do tail text.txt; done
如果您想让最后几行在屏幕上可见但隐藏较旧的行,watch
实用方便。
watch tail text.txt