これは私のサンプルテキストファイルです:
アズダ // <<< TAG これは削除する必要があります // TAG >>> これはそこにあるはずです // <<< TAG T >> asd asd // TAG >>>
私はo/pを次のようにしたいと思います:
アズダ これはそこにあるはずです
基本的に、「// << >>」の間の行(これらの行も含む)を見つけて削除しようとしています。
sedを使ってみました
sed -n '1h; 1!H; $ {; g; s /// <<] * TAG >>> // g; p;}' <test.txt
しかし、それが正しい出力を生成しなかった方法がいくつかあります。">"記号を含む2番目のタグが正規表現で失敗しました。どこが間違っているのかわからない?
それを行う方法はありますか?