質問: ### 前提・実現したいこと LinuxのRedhatを使ってます。 Sedなどコマンド一つで複数行にまたがる文字列の削除をしたいです。 ### 発生している問題・エラーメッセージ 下記のような形式な文字列があったとして ---------------sample.txt aaa123: a123 b456 c789 bbb456: a123 ccc789: b456 ---- aaa123: a123 b456 c789 この部分だけを削除したいです。 コロンのある行は重複ありません。 タブ先頭の行は重複があるので困ってます。 現在はVIで手動削除しています。 ミスがないようにコマンドで処理したいので どうぞ宜しくお願いします。
回答: awk に変更しました awk '{if($1~/.+:$/)w=0;if($1~/^aaa123:$/)w=1;if(w==1)next;print$0;}' sample.txt