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