sed を使用した 2 つの異なるパターン間の一致 [重複]

sed を使用した 2 つの異なるパターン間の一致 [重複]

たとえば、次の2つのモード間の出力をキャプチャしたいとします。

sed -n '/^pattern1/,/^pattern2/p;/^pattern2/q' 

しかし、理由なく出力をキャプチャしたいと思います。

これが役に立つことを知っていますが、grep -Evsedがどのように機能するかを知りたいです。

答え1

以下を試すことができますawk

awk '/^pattern1/{p=1;next}/^pattern2/{p=0}p' file

p変数はパターンが見つかると設定され、pattern12番目のパターンが満たされるとリセットされます。

pスクリプトの最後のifは、行を印刷する基本的なawkジョブをトリガーしますp==1

関連情報