3回発生ごとにパターン抽出/印刷

3回発生ごとにパターン抽出/印刷

停止モードまで行を抽出/印刷する必要があります。これは、開始パターンが3番目に表示されるたびに、つまりERROR_FILE_NOT_FOUNDファイルが終了するまで発生するはずです。以下はログファイルの例です。

ERROR_FILE_NOT_FOUND
some text
ERROR_FILE_NOT_FOUND
some text
ERROR_FILE_NOT_FOUND
Extract line 1
Extract line 2
Extract line 3
Stop_pattern
some text
ERROR_FILE_NOT_FOUND
some text
ERROR_FILE_NOT_FOUND
some text
ERROR_FILE_NOT_FOUND
Extract line 5
Extract line 6
Extract line 7
Stop_pattern
some text
ERROR_FILE_NOT_FOUND
some text
ERROR_FILE_NOT_FOUND
some text
ERROR_FILE_NOT_FOUND
Extract line 9
Extract line 10
Extract line 11
Stop_pattern

希望の出力:

Extract line 1
Extract line 2
Extract line 3
//separate if possible
Extract line 5
Extract line 6
Extract line 7
//separate if possible
Extract line 9
Extract line 10
Extract line 11
//separate if possible

ベストアンサー1

まったく:

$ awk '/Stop_pattern/{c=0; print ""}; c>=3;/ERROR_FILE_NOT_FOUND/{c++} ' file 
Extract line 1
Extract line 2
Extract line 3

Extract line 5
Extract line 6
Extract line 7

Extract line 9
Extract line 10
Extract line 11

おすすめ記事