shell 之shell中的通配符

mac2024-05-17  26

常见通配符

字符含义实例*匹配0或多个字符a*b ,a与b之间可以有任意长度的任意字符,也可以一个都没有,如aabcb、a012b、ab?匹配任意一个字符a?b ,a与b之间必须也只能有一个字符,可以是任意字符,如aab、a2b[list]匹配list中的任意单一字符a[xyz]b ,a与b之间不许也只能由一个字符,且只能是x或y或z,如axb、ayb、azb[!list]匹配除list中的任意单一字符a[!0-9]b ,a与b之间必须也只能有一个字符,但是不能是阿拉伯数字,如axb,abb[c1-c2]匹配c1-c2中的任意单一字符,如[0-9]、[a-z]a[0-9]b ,a与b之间必须也只能有一个字符,且必须是数字,如a0b,a1b,…,a9b{str1,str2,…}匹配str1或str2(或更多)其一字符串a{abc,xyz,123}b,a与b之间只能是abc或xyz或123这三个字符串之一

示例

[root@localhost ~]# ls /etc/*.conf /etc/asound.conf /etc/gai.conf /etc/krb5.conf /etc/logrotate.conf /etc/ntp.conf /etc/prelink.conf /etc/sestatus.conf /etc/tpvmlp.conf /etc/dnsmasq.conf /etc/grub.conf /etc/ld.so.conf /etc/mke2fs.conf /etc/pbm2ppa.conf /etc/readahead.conf /etc/smartd.conf /etc/updatedb.conf /etc/dracut.conf /etc/host.conf /etc/libaudit.conf /etc/mtools.conf /etc/pm-utils-hd-apm-restore.conf /etc/resolv.conf /etc/sos.conf /etc/warnquota.conf /etc/fprintd.conf /etc/kdump.conf /etc/libuser.conf /etc/nsswitch.conf /etc/pnm2ppa.conf /etc/rsyslog.conf /etc/sysctl.conf /etc/yum.conf [root@localhost ~]# [root@localhost ~]# ls /etc/???.conf /etc/gai.conf /etc/ntp.conf /etc/sos.conf /etc/yum.conf [root@localhost ~]# [root@localhost ~]# touch /opt/a{1,2,3}.txt [root@localhost ~]# ls /opt/ a1.txt a2.txt a3.txt [root@localhost ~]# ls /opt/a[123].txt /opt/a1.txt /opt/a2.txt /opt/a3.txt [root@localhost ~]# ls /opt/a[1,2,3].txt /opt/a1.txt /opt/a2.txt /opt/a3.txt [root@localhost ~]# [root@localhost ~]# ls /opt/a[1,3].txt /opt/a1.txt /opt/a3.txt [root@localhost ~]#
最新回复(0)