Linux基础篇学习——命令行通配符

通配符

通配符是shell在做Path name Expansion时用到的,即通配符一般只用于文件名匹配,它是由shell解析的,比如find,ls,cp,mv

通配符 含义
* 匹配任意长度任意字符
? 匹配任意单个字符
[] 匹配指定范围内任意单个字符
[^] 匹配指定范围外任意单个字符

常用通配符

 匹配任意单个字母 [a-z] [[:alpha:]]
 匹配任意单个数字[0-9] [[:digit:]]
 匹配任意单个字母或数字[0-9a-z] [[:alnum:]]
 匹配所有大写字母[[:upper:]]
 匹配所有小写字母[[:lower:]]
 匹配标点符号[[:punct:]]
 匹配空白字符[[:space:]]

练习

  1. 显示/var目录下所有以一个1开头,以一个小写字母结尾,且中间出现一位任意字符的文件或目录
    ls -d /var/1?[[:lower:]]
  2. 显示/etc下,以任意一位数字开头,且以非数字结尾的文件或目录
    ls -d /etc/[0-9]*[^0-9]
  3. 显示/etc目录下,以非字母开头,后面跟一个字母及其它任意长度任意字符的文件或目录
    ls -d /etc/[^a-z][a-z]*
  4. 复制/etc目录下,所有以m开头,以非数字结尾的文件或目录至/tm/magedu.com目录
    cp -r /etc/m*[^0-9] /tmp/magedu.com
  5. 复制/usr/share/man目录下,所有以man开头,后跟一个数字结尾的文件或目录至/tmp/man/目录下
    cp -r /usr/share/man/man[0-9] /tmp/man
  6. 显示/etc/下,所有以.conf结尾,且以nmpl任意一个字母开头的文件
    ls /etc/[nmpl]*.conf

显示目录不要忘记加-d;递归复制不要忘记加-r

发布了43 篇原创文章 · 获赞 30 · 访问量 5959

猜你喜欢

转载自blog.csdn.net/qq_42049496/article/details/102297060
今日推荐