Linux文件通配符: 当在使用命令行时,有很多时间都用来查找你所需要的文件,如ls、find等。 shell提供了一套完整的字符串模式匹配规则,或者称之为元字符,当shell遇到上述字符时,就会把它们当作特殊字符,而不是文件名中的普通字符,这样用户就可以用它们来匹配相应的文件名,我理解这可以称为通配符。

通配符 作用
* 匹配零个或多个字符
匹配任何单个字符
~ 当前用户家目录
~mage 用户mage家目录
~+ 当前工作目录
~- 前一个工作目录
[0-9] 匹配数字范围
[a-z] 字母
[A-Z] 字母
[abcd] 匹配列表中的任何的一个字符,即包含a或b或c或d
[^abcd] 匹配列表中的所有字符以外的字符
[:digit:] 任意数字,相当于0-9
[:lower:] 任意小写字母
[:upper:] 任意大写字母
[:alpha:] 任意大小写字母
[:alnum:] 任意数字或字母
[:blank:] 水平空白字符
[:space:] 水平或垂直空白字符
[:punct:] 标点符号
[:print:] 可打印字符
[:cntrl:] 控制(非打印) 字符
[:graph:] 图形字符
[:xdigit:] 十六进制字符

例如: 显示/etc目录下,所有以.d结尾的文件或目录:

显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文件或目录:

只显示/root下的隐藏文件和目录: 只显示/etc下的非隐藏目录: