sed を使用して、PAT1 を含むが PAT2 は含まない行を抽出します。

sed を使用して、PAT1 を含むが PAT2 は含まない行を抽出します。

PAT1は含まれていますが、PAT2は含まれていないファイルから行を抽出したいと思います。たとえば、PAT1='dog'、PAT2='cat'、次の入力は次のようになります。

1 cat chicken
2 bird dog apple
3 dog orange cat
4 cat juice coffee
5 cow milk dog

私は次のような出力が欲しい。

2 bird dog apple
5 cow milk dog

ベストアンサー1

それは次のとおりです。

sed '/dog/!d;/cat/d'

また、見ることができます

grep dog | grep -v cat

おすすめ記事