ログを日付でgrepして失敗した話
例えば12時~13時の間のログファイルを確認したかったが失敗した話
考慮不足だった手順
grep "2020/12/1 1[2-3]" hoge.log
これで12~13時のログは出力できますが、
該当プロジェクトはjavaプロジェクトで、StackTraceは日付がない行で表示される。
肝心のエラーが拾えない。。。
対策
最初の行
grep -n -m 1 "2020/12/1 1[2-3]" hoge.log
最後の行
grep -n -m 1 "2020/12/1 1[2-3]" hoge.log | tail -n 1
取得した行番号でsed
sed -n '開始行,終了行p' ファイル名
sed -n '100,200p' hoge.log
tailよりtacのほうがよいらしいが、行番が逆なので工夫が必要、未確認。
もっと良いやり方があれば知りたい。