文件通配符:
-
* 匹配零个或多个字符
-
? 匹配任何单个字符
-
~ 当前用户家目录
-
~username 用户家目录
-
~+ 当前工作目录
-
~- 前一个工作目录
-
[0-9] 匹配一个数字范围
-
[a-z]:大写和小写字母
-
[A-Z]:大写字母
-
[abc] 匹配列表中的任何的一个字符
-
[^abc] 匹配列表中的所有字符以外的字符
预定义的字符类:
可以用 #man -f glob 查看所在的章节然后 #man 7 glob
-
[:digit:] :任意数字,相当于0-9
-
[:lower:] :任意小写字母
-
[:upper:] :任意大写字母
-
[:alpha:] :任意大小写字母
-
[:alnum:] :任意数字或字母
-
[:space:] :空格
-
[:punct:] :标点符号
实战训练:
1、显示/var目录下所有以l开头,以一个小写字母结尾,且中 间出现至少一位数字的文件或目录
ls -d /var/l*[[:digit:]]*[[:lower:]]
2、显示/etc目录下以任意一位数字开头,且以非数字结尾的 文件或目录
ls -d /etc/[[:digit]]*[^[:digit:]]
3、显示/etc/目录下以非字母开头,后面跟了一个字母及其 它任意长度任意字符的文件或目录
ls -d /etc/[^[:alpha:]][[:alpha:]]*[[:alnum:]]*
4、显示/etc目录下所有以m开头以非数字结尾的文件或目录
ls -d /etc/m*[^[:digit:]]
5、显示/etc目录下,所有以.d结尾的文件或目录
ls -d /etc/*.d
6、显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文 件或目录
ls -d /etc/[mnrp]*.conf