Egrep正则expression式抑制某些行

我尝试使用以下命令来抑制包含string“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)' 

我的正则expression式不起作用,有人可以给我一个工作吗?

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

应该做的伎俩。

甚至不需要egrep。

– 编辑 –

如果你想匹配更实质性不同的IP:

  grep -v'DST = \(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)'