わかりました、これはトリッキーなものです...私は1つのfile1を持っていて、file1からの特定のテキストだけでfile2を作成したいと思います。
random useless text
#START
random IMPORTANT text
#END
random useless text
random useless text
#START
random IMPORTANT text
#END
random useless text
#STARTと#ENDの最初のペア(#を含む)の間にあるテキストを抽出したいのですが、#STARTと#ENDの2番目のペアは無視してください。ペア#START#ENDが同じファイルで2回発生することに注意してください。FIRSTペア(#の記号を含む)の間にあるものが欲しいだけです。
それがすべて言われ、行われた後、私はこのリテラルの結果だけを持つべきです(#START #ENDの最初のペアからのみ:
#START
random IMPORTANT text
#END
別の投稿で誰かが使用しました:
sed -n "/ this is token 1 /、/ this is token 2 / p"
これは、「これはトークン1です」と「これはトークン2です」という1つのペアの文字列を削除する方法でした。
しかし、このsedで「#START」と「#END」を使用すると、#STARTと#ENDの両方のペアが保持されます。
注:最初の#START #ENDの間にあるものは、#START#ENDの2番目のペアの間にあるものとは常に異なります。