服务器之家

服务器之家 > 正文

grep正则表达式实现查找某个特定的IP地址

时间:2019-09-20 14:59     来源/作者:服务器之家

下面会举几个在grep命令中使用正则表达式从一个文件中匹配到特定的IP地址。下面的正则表达式将会匹配IPV4的地址。

正则表达匹配IP地址:

使用下面的正则表达式来匹配IPV4的地址,先来匹配从0.0.0.0到999.999.999.999的模式。
 

复制代码

代码如下:


“([0-9]{1,3}[\.]){3}[0-9]{1,3}”


示例:使用grep命令来查找匹配特定的地址

复制代码

代码如下:


$ grep -E -o “([0-9]{1,3}[\.]){3}[0-9]{1,3}” filename</p> <p>[root@devops ~]# echo 000.333.222.444 &gt;test1
[root@devops ~]#
[root@devops ~]# grep -E -o “([0-9]{1,3}[\.]){3}[0-9]{1,3}” test1
000.333.222.444


上面的正则表达只是简单的匹配了特定的类似于ip地址的传,但它不能匹配真正的IPv4地址。可以通过下面的正则表达式来匹配.

复制代码

代码如下:


“(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.</p> <p>(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)”


通过grep命令匹配文件中的IPv4地址

复制代码

代码如下:


[root@devops ~]# grep -E -o “(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-</p> <p>4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)” test1
[root@devops ~]# echo 192.168.1.234 &gt; test1
[root@devops ~]# grep -E -o “(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-</p> <p>4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)” test1
192.168.1.234
[root@devops ~]</p> <p>#


其中:-E选项表示使用grep扩展的正则表达式
-o选项是只显示匹配到的字符串

标签:

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
返回顶部