尾随文件名,而不是文件

尾随文件名,而不是文件

在 UNIX(确切地说是 OS X BSD)中,我在日志文件上有一个“tail -f”命令。有时我想删除这个日志文件,这样我就可以更轻松地在文本编辑器中查看它。

我删除了该文件,然后我的程序在新活动后重新创建了它。但是,我的 tail 命令(以及监视旧日志文件的任何其他命令)没有更新;它仍在监视旧的、已删除的日志文件。

我想我明白这是为什么(文件名只是指向文件数据块的指针)。我想知道如何解决这个问题。理想情况下,当文件名被删除并重新创建时,我的 tail 命令(以及我指向文件的任何其他内容)将能够从新文件中读取数据。

我该如何做呢?

答案1

看看这个-F选项。我认为它适合你的目的。

来自信息尾部:

  -F
     This option is the same as `--follow=name --retry'.  That is, tail
     will attempt to reopen a file when it is removed.  Should this
     fail, tail will keep trying until it becomes accessible again.

相关内容