Grep

Egrep 正則表達式來抑制某些行

  • October 8, 2010

我嘗試使用以下命令來抑制某些包含字元串“DST=192.168.1”或“DST=192.168.2”的輸出行

tail /var/log/messages | egrep -v -e 'DST=(192\.168\.1\.1)|DST=(192\.168\.2\.1)'

我的正則表達式不起作用,有人可以為我提供一個有效的嗎?

grep -v 'DST = 192 \ .168 \. [12] \. 1'

應該做的伎倆。

甚至不需要 egrep。

  • 編輯 -

如果您想以更實質性的方式匹配不同的 IP:

grep -v '夏令時=\(a\.b\.c\.d\|x\.y\.z\.q\)'

您可以通過添加另一個 | 來添加更多 IP。其次是下一個IP。

在這種情況下,您可能實際上想要使用 egrep (或grep -E,相同的東西),所以它看起來會更好一些,如下所示:

grep -E -v 'DST=(a\.b\.c\.d|x\.y\.z\.q)'

引用自:https://serverfault.com/questions/189075