다음 명령을 실행하는 가장 좋은 방법이 있는지 궁금합니다.
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
다른 두 가지 옵션
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