2つの正規表現を含むファイルから行を印刷する方法(その1つは別の正規表現の部分文字列)

2つの正規表現を含むファイルから行を印刷する方法(その1つは別の正規表現の部分文字列)

ファイルに以下がある場合 -

apple,orange,banana
orange
ora,orange,apple
apple,ora
orange,apple,ora,banana

以下を含む行だけを印刷したいと思いますoraorange

ora,orange,apple
orange,apple,ora,banana

ベストアンサー1

シングルエグレフ:

egrep 'ora\b.*orange|orange.*ora\b' file

出力:

ora,orange,apple
orange,apple,ora,banana

またはシングルsed表現する:

sed -n '/orange/{/ora\b/p}' file
ora,orange,apple
orange,apple,ora,banana

どちらの方法も\b(単語の境界)が使用されます。

おすすめ記事