いくつかのサードパーティのログファイルがあり、コマンドラインからエラーを抽出しようとしています。
ログは次のとおりです。
time=1
time=2
time=3
at com.test.com....
at com.test.com....
at com.test2.com....
time=4
time=5
time=6
time=7
time=8
time=9
at org.badstuff.com...
at org.badstuff.com...
at org.badstuff.com...
time=10
time=11
で始まる行はat
TAB文字で始まるので、簡単に一致させることができます。
このファイルからこれらのスタックトレースをどのように抽出できますか?そして毎回最初のスタックトレースの前に何行ありますか?私はMacを使用していますが、可能であればMac / Linuxで動作する汎用ソリューションを好みます。両方とも頻繁に作業する必要があるからです。
上記の例では、次のようになります。
time=2
time=3
at com.test.com....
at com.test.com....
at com.test2.com....
time=8
time=9
at org.badstuff.com...
at org.badstuff.com...
at org.badstuff.com...
ベストアンサー1
たとえば、-A
afterコンテキスト、-B
eforeコンテキスト、または-C
コンテキストオプションを使用します。grep
grep -B2 '^\t' file