ファイルに複数回表示される2つの異なるパターン(パターンを含む)間の線を印刷しようとしています。開始パターン - 終了パターン - リズムに加えて、2番目のパターンも表示されます。
例:
-文書:
XYZ
XYY
BBB
XYX
AAA
AAB
BBB
XYW
AAA
AAC
AAD
BBB
- 出力は次のようになります。
AAA
AAB
BBB
AAA
AAC
AAD
BBB
私は同様のことを試しましたawk '/AAA/{a=1}/BBB/{print;a=0}a'
。
ありがとうございます。
答え1
必ずawk
これを行う必要がある場合:
awk -- '/AAA/,/BBB/{print}'
sed
しかし、あなたの場合でも非常にうまく動作するようです。同様に、以下を行います。
sed -ne '/AAA/,/BBB/p'
両方のコマンドは、コンマを使用して、最初のパターンに一致する行から始まり、2番目のパターンに一致する行まで(および含む)すべての行を考慮することを示します。