パターンに一致するファイルの行を印刷する必要があります[〜#〜]または[〜#〜]を使用して別のパターンawk または sed 。これは簡単な作業だと思いますが、答えが見つからないようです。何か案は?
POSIXの方法
awk '/pattern1/ || /pattern2/{print}'
公平を期すために、私はlhfの方が/pattern1|pattern2/
これは、同じ結果を得るために必要な入力が少ないためです。ただし、このテンプレートは論理AND操作には使用できないことを指摘する必要があります。そのため、/pattern1/ && /pattern2/
使用する:
sed -nr '/patt1|patt2/p'
ここで、patt1
およびpatt2
はパターンです。行全体と一致させたい場合は、次を使用します。
sed -nr '/^(patt1|patt2)$/p'
-r
をドロップして、エスケープを追加できます。
sed -n '/^\(patt1\|patt2\)$/p'
pOSIX準拠のため。
awk '/PATT1|PATT2/ { print }'
なぜgrepを使いたくないのですか?
grep -e 'pattern1' -e 'pattern2'