bash特性之文件名通配(globbing): *: 任意长度的任意字符 p*d, pad, pbd, pd *ab*c ?: 匹配任意单字符 []: 匹配指定范围内的任意单字符 [abc], [a-z], [0-9], [0-9a-z] [^]:匹配指定范围以外的任意单字符 [^0-9a-z] 字符集合: [:space:] : 所有空白字符 [:punct:] : 所有标点符号 [:lower:] :所有小写字母 [:upper:] [:digit:] [:alnum:] [:alpha:] 练习: 1、显示/var目录下所有以l开头,以一个小字母结尾,且中间出现一位数字的文件或目录; # ls /var/l*[[:digit:]]*[[:lower:]] 2、显示/etc目录下,以任意一位数字开头,且以非数字结尾的文件或目录; # ls -d /etc/[[:digit:]]*[^[:digit:]] 3、显示/etc目录下,以非字母开头,后面跟了一个字母及其它任意长度字符的文件或目录; # ls -d /etc/[^[:alpha:]][[:alpha:]]* 练习: 1、在/tmp/mytest目录中创建以testdir打头,后跟当前日期和时间的空目录,形如testdir-2014-07-03-09-15-33; # mkdir -pv /tmp/mytest/testdir-$(date +%F-%H-%M-%S)
bash特性之文件名通配(globbing)
关注
打赏