tail -faファイル10分/N本のマッチラインまで?

tail -faファイル10分/N本のマッチラインまで?

次のように処理するログファイルがあります。

grep pattern /var/log/whatever.log | \
    cut ... | sort | uniq -c | sort -rn | \
    etc....

ただし、ログファイルの容量がかなり大きく、1日から始まるイベントを記録します。また、継続的に追加されます。私はただ相手にしたい最後次の10分間ファイルを送信してください。

だから私は次のようなものを探しています。

killafter 600 tail -f /var/log/whatever.log | stuff

または、より良い方法は次のとおりです(一致する1000行の行をキャプチャするのにどれくらい時間がかかるかを待ってください)。

tail -f /var/log/whatever.log | grep pattern | stopafter -lines 1000 | stuff

これを行うためのツールはありますか?

ベストアンサー1

roaima はユーザーにtimeoutコマンドを正しく指示し、必要headな行数を読み取った後に実際に終了するので、期待します。

timeout 600s tail -f ‹logfile› | ‹filter› | head -n 1000

あなたはそこに着きます。

おすすめ記事