bash中的通配符小结

【bash中的通配符】

在 Bash 中,如果需要模糊匹配文件名或目录名,就要用到通配符。下面为常用的通配符

【通配符】 【说明】

* 匹配0或任意个字符

? 匹配一个任意字符

-\] 匹配中括号的字符。例如\[a-b\],匹配小写字母,只会匹配集合中的一个 \[\^\]或\[!\] 匹配除了中括号的一个字符。例如\[\^0-9\],匹配除了数字的字符,只会匹配集合中的一个 {ab,ba} 匹配其中一个字符串。例如匹配ab或ba \[\[:class:\]\] 匹配属于字符类class中的任意单个字符 常见的字符类包括: \[:alnum:\]:匹配任意一个字母和数字字符。 \[:alpha:\]:匹配任意一个字母字符。 \[:blank:\]:匹配空格和制表符。 \[:digit:\]:匹配任意一个数字字符。 \[:graph:\]:匹配任意一个可打印字符(不包括空格)。 \[:lower:\]:匹配任意一个小写字母。 \[:print:\]:匹配任意一个可打印字符(包括空格)。 \[:punct:\]:匹配任意一个标点符号。 \[:space:\]:匹配任意一个空白字符,包括空格、制表符、换页符等。 \[:upper:\]:匹配任意一个大写字母。 \[:xdigit:\]:匹配任意一个十六进制数字字符。 下面是一些验证实例: \[apps@test-001 \~\]$ touch lmgs \[apps@test-001 \~\]$ ls l\[!o\]gs lmgs \[apps@test-001 \~\]$ ls l\[\^o\]gs lmgs \[apps@test-001 \~\]$ ls l{og,mg}\* lmgs logs: csp nacos 据此我们创建文件的时候可以根据通配符精确创建需要的文件,例如 \[apps@test-001 \~\]$ touch steven{mama,baba}.log \[apps@test-001 \~\]$ ls steven\* stevenbaba.log steven.json stevenmama.log steven.txt 【验证字符类的实例】 \[apps@test-001 \~\]$ touch l12345gs \[apps@test-001 \~\]$ ls l\[\[:alnum:\]\]\* l12345gs lmgs logs: csp nacos 【中间不出现数字的文件\[!\[:digit:\]\]】 \[apps@test-001 \~\]$ ls l\[!\[:digit:\]\]gs lmgs logs: csp nacos \~\]$ ls l\[\^\[:digit:\]\]gs lmgs logs: csp nacos 【综上:通过以上实验,我们可以看到在通配符中相反的含义\[\^\]或\[!\]两者实现的效果是等价的】

相关推荐
lzhdim37 分钟前
SQL 入门 14:SQL 触发器与事件:自动化数据处理
linux·前端·数据库·sql·自动化
脆皮炸鸡7551 小时前
库制作与原理~静态库&静态链接
linux·经验分享·笔记·学习方法
wangjialelele1 小时前
Linux SystemV 消息队列 + 责任链模式:实现客户端消息处理流水线
linux·服务器·c语言·网络·c++·责任链模式
|_⊙1 小时前
Linux 深入理解文件(Ext2文件系统:下)
linux·服务器·数据库
cui_ruicheng1 小时前
Linux网络编程(一):网络基础与协议概念
linux·网络·操作系统
dualven_in_csdn1 小时前
【网络】ip转发
linux·服务器·网络
恋奴娇1 小时前
ubuntu 25 gnome-screenshot 录屏启动失败 原因pipewire服务未启动
linux·运维·ubuntu
susu10830189112 小时前
windows系统的WSL的Ubuntu安装docker
linux·ubuntu·docker
嵌入式小能手2 小时前
飞凌嵌入式ElfBoard-进程间的通信之信号处理sigaction
linux·算法·信号处理
剑神一笑2 小时前
Linux top 命令深度解析:进程监控的性能优化实战
linux·运维·正则表达式