2012-10-30 82 views

回答

1

你不需要正則表達式,如果數字和字都是固定的,只需使用|管道,並通過2個不同的grep

cat file_name | grep -v 12345 | grep omgspecialword 

說明篩選結果:

cat file_name | - cat打印file_name的內容並將其管入下一個段

grep -v 12345 |排除包含匹配模式0的行,然後將結果傳送到下一個分段

grep omgspecialword過濾包含匹配模式omgspecialword的行。由於它沒有傳入其他任何東西,所以這被打印到標準輸出。

+0

所以,沒關係跨多個'grep's管的結果嗎?我想我有一次被告知,這不是很有效率或不滿意。儘管如此,我從來不屑於查看它。 – user5243421

+0

除非你正在處理非常大的文件,並且需要優化性能,否則通常不是什麼大問題。 –

+0

什麼是「非常大」的文件?有關日誌的問題有400萬行 – user5243421

0
grep 'omgspecialword' your_file|grep -v 12345 

awk '$0!~/12345/ && /omgspecialword/' your_file 

perl -lne 'if(/omgspecialword/ && !(/12345/)){print}' your_file 
相關問題