次のログファイルがあります。
Event
Process 1
Process 2
End event success
Event
Process 1
Process 3
End event error
Event
Process 1
Process 5
End event success
Event
Process 1
Process 7
End event success
Event
Process 2
Process 4
End event error
次のエラーイベントを維持したいと思います。
Event
Process 1
Process 3
End event error
Event
Process 2
Process 4
End event error
試してみましたcat Event.log | awk '/Event/,/End event error/'
が、好きなようにはなりませんでした。
ベストアンサー1
これは働きます:
awk '/^Event/{n=1} {lines[n++]=$0} /^End event error/{for(i=1;i<n;++i) print lines[i]}' Event.log
説明:「イベント」以降のすべての行を配列に保存し、「イベント終了エラー」が発生した場合に印刷します。