1. ホーム
  2. linux

[解決済み] grep が一致する各行の下と上の行を表示するにはどうすればよいですか?[重複しています。]

2022-03-24 05:46:26

質問

非常に大きなファイルを解析しなければならないのですが、grepコマンド(または他のツール)を使いたいのですが。

各ログ行にある単語を検索したい FAILED そして、一致した行の上と下の行と、一致した行を表示します。

例えば

id : 15
Satus : SUCCESS
Message : no problem


id : 15
Satus : FAILED
Message : connection error


そして、印刷をしたい。

id : 15
Satus : FAILED
Message : connection error

解決方法は?

grepの -A 1 オプションを使用すると、1行後が得られます。 -B 1 は1行前、そして -C 1 は、両方を組み合わせて、前後に1行ずつ表示します。 -1 も同じです。