我的日志文件内容为log.file
123
123
321
312
123
412
151
我做过tail -f log.file
。在其他会话中,我打开了相同的日志文件并附加了更多值。我的假设是tail -f log.file
应该显示新附加的值但不显示。
答案 0 :(得分:3)
这取决于你如何打开文件并追加。你必须确保改变发生并且#34;到位"
这将有效:
echo >> logfile
这不是:
vi logfile
为什么不呢? vi
相当于:
mv logfile logfile~
echo >> logfile
在这一系列命令之后,tail -f
将跟随logfile~
;它不会看到新创建的文件。
这是因为tail
没有跟随名称;它遵循文件描述符,当名称改变时,它不会改变。这种方法允许Unix各种巧妙的技巧(如echo
附加到文件,而tail
打开它。
tail -F
可以正常工作,因为它注意到该文件已重命名。