Logstashの documentation で、コマンドtail -0a
-aフラグについて聞いたことがなく、google、tail --help、またはmanページで情報を見つけることができません。
違いは何ですか 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'
tail -0
は、tail -n 0
を書き込むための歴史的な非推奨の方法です。つまり、ファイルの最後の0行を出力します。 (したがって、tail -0
は出力を生成しません。)
-a
オプションを持つtail
実装を知りません。コンテキストからは、-f
が意味されているように見えます。 tail -f
はtail
をファイルの最後に達したときに開いたままにし、他のプログラムがファイルの最後にさらにデータを追加し、この追加されたデータを出力する場合に備えて、永久に監視し続けます。したがって、tail -0f
はファイルの現在の終わりから始まり、その後ファイルに追加されるすべてのデータを出力します。
-0
は、0行を意味します。つまり、既存のものを印刷しません。
テールマンページのいずれも、-a
オプションについて言及していません。おそらく、-f
または-F
を意味し、tail
の開始後に書き込まれた新しいコンテンツを出力します。
参照: