1.\{n,m\}含义
linux正则表达式之\{n,m\}表示n到m个的“前一个重复字符”
若正则表达式为\{n\},则表示连续重复n个前一个字符
若正则表达式为\{n,\},则表示连续重复n个及以上前一个字符
2.样例
正则表达式\{n,m\}样例
命令1:
grep -n "bo\{3,4\}t" anaconda-ks.cfg
#表示在b和t之间有3~4个o存在的字符串,即(booot)、(booot)
[root@elasticsearch ~]# grep -n "bo\{3,4\}t" anaconda-ks.cfg
29:boootloader --location=mbr --boot-drive=sda
30:booootloader --location=mbr --boot-drive=sda
[root@elasticsearch ~]#
命令2:
grep -n "bo\{2\}t" anaconda-ks.cfg
#表示在b和t之间有2个o存在的字符串,即(boot)
[root@elasticsearch ~]# grep -n "bo\{2\}t" anaconda-ks.cfg
8:# Run the Setup Agent on first boot
9:firstboot --enable
17:network --bootproto=static --device=ens32 --gateway=172.20.10.1 --ip=172.20.10.11 --nameserver=172.20.10.1 --netmask=255.255.255.240 --ipv6=auto --activate
26:# System bootloader configuration
27:bootloader --location=mbr --boot-drive=sda
28:bootloader --location=mbr --boot-drive=sda
29:boootloader --location=mbr --boot-drive=sda
30:booootloader --location=mbr --boot-drive=sda
[root@elasticsearch ~]#
命令3:
grep -n "bo\{2,\}t" anaconda-ks.cfg
#表示在b和t之间有2个及以上o存在的字符串,即(boot)、(boot)、(b......t)、......
[root@elasticsearch ~]# grep -n "bo\{2,\}t" anaconda-ks.cfg
8:# Run the Setup Agent on first boot
9:firstboot --enable
17:network --bootproto=static --device=ens32 --gateway=172.20.10.1 --ip=172.20.10.11 --nameserver=172.20.10.1 --netmask=255.255.255.240 --ipv6=auto --activate
26:# System bootloader configuration
27:bootloader --location=mbr --boot-drive=sda
28:bootloader --location=mbr --boot-drive=sda
29:boootloader --location=mbr --boot-drive=sda
30:booootloader --location=mbr --boot-drive=sda
[root@elasticsearch ~]#