【发布时间】:2013-02-08 00:13:47
【问题描述】:
我的目标是用三个八位字节精确匹配 IP 地址,而四个 IP 八位字节必须是有效八位字节 -
例如,我在文件中有以下 IP
$ more file
192.9.200.10
192.9.200.100
192.9.200.1555
192.9.200.1
192.9.200.aaa
192.9.200.@
192.9.200.:
192.9.200
192.9.200.
我需要匹配前三个八位字节 - 192.9.200,而四个八位字节必须有效 (0-255)
所以最后 - 期望结果应该是:
192.9.200.10
192.9.200.100
192.9.200.1
基本语法如下:
IP_ADDRESS_THREE_OCTETS=192.9.200
cat file | grep -x $IP_ADDRESS_THREE_OCTETS.[ grep Regular Expression syntax ]
请指教如何在四个八位字节中编写正确的“grep正则表达式”以匹配三个八位字节,而四个八位字节必须有效?
【问题讨论】:
-
cat file |是一种浪费。请改用<file,或将file作为参数传递给grep。
标签: linux perl grep solaris ksh