在里面文档对于logstash,他们提到了命令tail -0a
我从未听说过 -a 标志,并且在 google、tail --help 或手册页上找不到任何信息。
tail -0a foo.bar
和有什么区别tail foo.bar
更新
经过进一步测试,我想知道这是不是一个错字。这两个命令在我的 Mac 上都不起作用。
[root@interactive adaptive]# tail -0a /var/log/messages
tail: option used in invalid context -- 0
[root@interactive adaptive]# tail -a0 /var/log/messages
tail: invalid option -- 'a'
答案1
tail -0
是一种历史上已弃用的书写方式tail -n 0
,即打印文件的最后 0 行。 (所以tail -0
不会产生任何输出。)
我不知道有任何tail
实现有-a
选项。从上下文来看,它似乎-f
是故意的。当文件到达末尾时,tail -f
使文件保持打开状态,并一直保持监视以防其他程序在文件末尾附加更多数据,并在附加数据时打印这些附加数据。因此从文件的当前末尾开始,并打印随后附加到文件的任何数据。tail
tail -0f
答案2
这-0
意味着 0 行,换句话说,不打印任何现有的内容。
尾部手册页都没有提到-a
选项。也许他们的意思是-f
或-F
,它将打印tail
启动后写入的任何新内容。
参考: