ファイルの最後の行を端末の1行に印刷し続けます。

ファイルの最後の行を端末の1行に印刷し続けます。

ファイルの最後の行を連続して印刷する方法一つ端末に行がありますか?

以下はうまくいきますが、非常にパフォーマンスが良いです。

while true; do tail -1 /tmp/somelog | tr "\012" "\015"; done

ベストアンサー1

tail-f追加コンテンツ用にファイルをポーリングする()オプションがすでにあります--follow。ヒントは、行末の置換を実行するためにパイプを追加するときに出力がバッファリングされるのを防ぐことです。

tail -n1 -f /tmp/somelog | stdbuf -o0 tr '\n' '\r'

バッファリングの問題については、例をご覧ください。パイプテール -f から awk

おすすめ記事