次のようなログファイルがある:
[DEBUG][2016-06-24 11:10:10,064][DataSourceImpl] - [line A...]
[DEBUG][2016-06-24 11:10:10,069][DataSourceImpl] - [line B...]
[DEBUG][2016-06-24 11:10:12,112][DataSourceImpl] - [line C...]
これはtail -f
リアルタイムの監視下にありますがtail
、たとえば2秒間非アクティブになった後、「空白行」を(パイプで送るコマンドを介して)自動挿入することは可能ですか?
期待される結果:
[DEBUG][2016-06-24 11:10:10,064][DataSourceImpl] - [line A...]
[DEBUG][2016-06-24 11:10:10,069][DataSourceImpl] - [line B...]
---
[DEBUG][2016-06-24 11:10:12,112][DataSourceImpl] - [line C...]
(2つの連続する行の間に2秒以上のギャップがあるため)。
awk -F'[][\\- ,:]+' '1'
上記のフィールドに分割されます]
、[
、-
、,
、及び
:
下記記載のように各フィールドがあるように、
[DEBUG][2016-06-24 11:10:10,064][DataSourceImpl] - [line A...]
22222 3333 44 55 66 77 88 999 ...
次に、いくつかのフィールドを連結し、それを使用して時差を測定できます。
tail -f input.log | awk -F'[][\\- ,:]+' '{ curr=$3$4$5$6$7$8$9 }
prev + 2000 < curr { print "" } # Print empty line if two seconds
# have passed since last record.
{ prev=curr } 1'
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加