tail -f <目录名称> 有什么作用?

deb*_*bal 4 bash tail

我错误地在终端中执行了以下命令:

tail -f /logs/applications/logs*

我得到以下输出:

tail: file shrunk!
Error 0
Run Code Online (Sandbox Code Playgroud)

我不确定到底发生了什么。我已经有一段时间没有跟踪目录中的文件数量了。有人可以解释一下到底发生了什么,我是否丢失了任何文件。

编辑:

不知道是不是巧合,我执行完代码后,数了一下目录下的文件数,竟然是10个!

第一次 10 号让我变得偏执...

dev*_*ull 7

我不确定到底发生了什么。

发生的情况是文件被外部应用程序轮换。这是常态。像logrotate 轮换日志文件这样的实用程序,即将现有日志文件的内容移动到另一个文件,并且在应用程序再次开始写入之前将现有文件清空

tail确定被跟踪文件的大小已减小时,它会打印您观察到的消息并继续跟踪文件。

从引用tail invocation的部分GNU的coreutils手册

无论您使用哪种方法,如果确定跟踪的文件已缩小,则tail打印一条消息,说明文件已被截断,并从新确定的端点继续跟踪文件的末尾。