ログファイルなどの tail -f の出力をgrepで絞り込んで表示するには
2016/11/30
Apacheなどのログファイルをtailコマンドでリアルタイムに監視しようと思って
$ tail -f access_log | grep PATTERN
とすると、grepが出力をバッファリングしてしまう。これではリアルタイムな監視ができず、いくらかの出力がたまにまとめて一度に表示されるようになってしまう。
その場合は、 grep に --line-buffered というオプションを付ける。すると grep は行単位で出力してくれるので、ログのリアルタイム監視ができる。
$ tail -f access_log | grep --line-buffered PATTERN