次のコマンドを実行する最良の方法があるかどうか疑問に思っていました
cat cisco.log-20151103.log | grep -v "90.192.142.138" | grep -v "PIX" | grep -v "Intrusion"
私は試した
cat cisco.log-20151103.log | grep -v "90.192.142.138|PIX|Intrusion"
しかし、それは機能しません。
答え1
他の2つのオプション
grep -v -e 90.192.142.138 -e PIX -e Intrusion cisco.log-20151103.log
固定文字列を仮定する
grep -vF '90.192.142.138
PIX
Intrusion
' cisco.log-20151103.log
答え2
grepは必ずしもパイプからの入力を必要としないので、次のようにすることができます。
grep -vE '90\.192\.142\.138|PIX|Intrusion' cisco.log-20151103.log
大文字の E は正規表現モードをオンにし、この場合はドットをエスケープする必要があります。
答え3
grep -vE "90.192.142.138|PIX|Intrusion" cisco.log-20151103.log
答え4
$ grep -v -f exclude.list
$ cat exclude.list
90.192.142.138
PIX
Intrusion