この質問にはすでに回答があります :それらを含む2つのパターンから最初の出現を選択する方法
(7つの回答)
4年前に閉鎖されました。
Linux
(7つの回答)
4年前に閉鎖されました。
いくつかの質問はこれに似ていますが、複数行にわたるパターンを検索したいときに機能する解決策が見つかりませんでした。次の
sed -n '/First string/,/Second string/ p' my.file
すべてを印刷します 一致したパターンの出現ですが、最初の出現のみが必要です。 GNUsedを使用しています。
承認された回答:
q
を使用する 終了パターンに達したときに明示的に終了します。
GNU sedの場合:
$ cat foo
foo
START
bar
END
blah
START another
$ sed -n '/START/,/END/p; /END/q' foo
START
bar
END
awk
おそらく、終了パターンを繰り返さないほうが簡単になるでしょう:
$ awk '/START/{p=1} p; /END/{exit}' foo
START
bar
END