linux文件名通配符:* ? [:digit:]数字 [:lower:]小写字母 [:upper:]大写字母

简介:

通配符命令简介:

      匹配符合相关条件的符号,匹配文件名查找。


  通配符类型:

      *:匹配任意长度的任意字符

       ?:匹配任意单个字符

       []:匹配指定范围内的任意单个字符

       [^]:匹配指定范围之外的任意单个字符

       [:space:]:空白字符

       [:punct:]:标点符号

       [:lower:]:小写字母

       [:upper:]:大写字母

       [:alpha:]:大小写字母

       [:digit:]:数字

       [:alnum:]:数字和大小写字母

   

通配符命令实例练习:

  1、创建a123,cd6,c78m,cl my,m.z,k 67,8yu,789等文件:注意,以上是以逗号为分隔符,

  其余都是文件名组成部分。

 [root@xuelinux test1]# touch a123 cd6 c78m 'cl my' m.z 'k 67' 8yu 789

  [root@xuelinux test1]# ls -l

总用量 0

-rw-r--r--. 1 root root 0 10月 11 14:34 789

-rw-r--r--. 1 root root 0 10月 11 14:34 8yu

-rw-r--r--. 1 root root 0 10月 11 14:34 a123

-rw-r--r--. 1 root root 0 10月 11 14:34 c78m

-rw-r--r--. 1 root root 0 10月 11 14:34 cd6

-rw-r--r--. 1 root root 0 10月 11 14:34 cl my

-rw-r--r--. 1 root root 0 10月 11 14:34 k 67

-rw-r--r--. 1 root root 0 10月 11 14:34 m.z

  2、显示所有以a或者m开头的文件: 

    ls -l [am]*

[root@xuelinux test1]# ls -l [am]*

-rw-r--r--. 1 root root 0 10月 11 14:34 a123

-rw-r--r--. 1 root root 0 10月 11 14:34 m.z

 3、显示所有文件名中包含了数字的文件:

    ls -l *[0-9]* 或者ls -l *[[:digit:]]*

[root@xuelinux test1]# ls -l *[0-9]*

-rw-r--r--. 1 root root 0 10月 11 14:34 789

-rw-r--r--. 1 root root 0 10月 11 14:34 8yu

-rw-r--r--. 1 root root 0 10月 11 14:34 a123

-rw-r--r--. 1 root root 0 10月 11 14:34 c78m

-rw-r--r--. 1 root root 0 10月 11 14:34 cd6

-rw-r--r--. 1 root root 0 10月 11 14:34 k 67

  4、显示所有以数字结尾且文件名中不包含空白符的文件:

     ls -l *[^[:space:]]*[0-9]  此命令无法精确排除,所以通配符不能完美的匹配此类情况。

[root@xuelinux test1]# ls -l *[^[:space:]]*[0-9]

-rw-r--r--. 1 root root 0 10月 11 14:34 789

-rw-r--r--. 1 root root 0 10月 11 14:34 a123

-rw-r--r--. 1 root root 0 10月 11 14:34 cd6

-rw-r--r--. 1 root root 0 10月 11 14:34 k 67   此文件名按道理是不应该被匹配的

  5、显示文件名中包含了非字母或数字的特殊符号的文件:

    ls -l *[^[:alnum:]]*

[root@xuelinux test1]# ls -l *[^[:alnum:]]*

-rw-r--r--. 1 root root 0 10月 11 14:34 cl my

-rw-r--r--. 1 root root 0 10月 11 14:34 k 67

-rw-r--r--. 1 root root 0 10月 11 14:34 m.z



















本文转自wang650108151CTO博客,原文链接:http://blog.51cto.com/woyaoxuelinux/1860662 ,如需转载请自行联系原作者

相关文章
|
6月前
|
Linux
linux如何查找指定文件名
linux如何查找指定文件名
|
4月前
|
安全 Linux
Linux通配符及其在文件搜索和管理中的应用
Linux通配符及其在文件搜索和管理中的应用
|
3月前
|
Linux
linux 删除乱码文件名的文件
【8月更文挑战第26天】当遇到文件名显示为乱码,导致无法正常通过键盘输入文件名进行删除操作时,可以利用鼠标的复制功能配合`rm`命令实现删除。对于文件夹的删除,可使用`rm -rf 目录名`。然而,有时这种方式仍无法删除某些特殊乱码文件,这时可以通过获取文件的i节点号(使用`ls -i`或`ll -i`命令查看)并执行`find -inum [节点号] -delete`来进行删除。这种方法特别适用于处理那些因文件名问题而难以删除的情况。
149 2
|
4月前
|
Java Linux
Linux通配符的使用方法
Linux通配符的使用方法
|
5月前
|
Linux
linux不同场景下修改文件名的五种方法
linux不同场景下修改文件名的五种方法
89 1
|
4月前
|
存储 Linux
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上
|
5月前
|
Linux Shell
Linux通配符总结
Linux通配符总结
|
安全 Linux
6.Linux文件管理命令---mv更改文件名
6.Linux文件管理命令---mv更改文件名
129 0
|
Linux Shell 开发工具
3.Linux文件管理命令-----ls显示文件名
3.Linux文件管理命令-----ls显示文件名