fooと一致するがbarと一致しない行をどのように削除できますか?

fooと一致するがbarと一致しない行をどのように削除できますか?

次のファイルから2行目と3行目を削除したいが、4行目(fooと一致するがbarは一致しない行)は削除したくないとします。たとえば、sedを使用してこれを簡単に実行できますか?

text
foo some more text
even more foo text
some foo text with bar

ベストアンサー1

これは私にとって効果的なようです。

sed '/foo/{/bar/!d;}' my_file

おすすめ記事