@搜索端口--正则表达式@

本文介绍如何使用egrep从XML配置文件中精确提取端口信息,并对比grep的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章出处http://blog.youkuaiyun.com/zhuying_linux/article/details/6822987

假如说我在一段代码中想搜出一个端口,那么怎么做呢,下面我们来看一个例子:

[root@Test230 ~]# cat port 
<name>AdminServer</name><listen-address></listen-address></server><server><name>Server-230-1</name><listen-port>7002</listen-port><cluster>Cluster-1</cluster><listen-address>192.168.55.230</listen-address>

我们的目的是提取那个端口7002,但是我们使用grep搜索出来却还是那段代码,因为这本来就是一行,例如:

[root@Test230 ~]# cat port |grep "<listen-port>"
<name>AdminServer</name><listen-address></listen-address></server><server><name>Server-230-1</name><listen-port>7002</listen-port><cluster>Cluster-1</cluster><listen-address>192.168.55.230</listen-address>

至于那个awk,cut之类的觉得未免又有些麻烦,那么我们该怎么办呢,这个时候就应该想起正则表达式,它的功能相当的强大,看看下面就知道了~

[root@Test230 ~]# cat port |egrep -o '[0-9]{4}'
7002

假如我们的端口号有可能是5位的话,应该将上面的改成

[root@Test230 ~]# cat port |egrep -o '[0-9]{4,5}'
7002

egrep搜索high&low memery

egrep 'High|Low' /proc/meminfo

注意:

# cat /proc/meminfo |grep LowFree检查LowMem内存碎片

下面我们来总结一下它的用法吧~

grep的用法:

x\{m\}
重复字符x,m次,如:/0\{5\}/匹配包含5个o的行。 


x\{m,\}
重复字符x,至少m次,如:/o\{5,\}/匹配至少有5个o的行。 

x\{m,n\}
重复字符x,至少m次,不多于n次,如:/o\{5,10\}/匹配5--10个o的行。

egrep的用法:

x{m}
重复字符x,m次,如:/0\{5\}/匹配包含5个o的行。 

x{m,}
重复字符x,至少m次,如:/o\{5,\}/匹配至少有5个o的行。 


x{m,n}
重复字符x,至少m次,不多于n次,如:/o\{5,10\}/匹配5--10个o的行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值