shell学习之-文件名的匹配

来源:互联网 发布:淘宝怎么设置打折促销 编辑:程序博客网 时间:2024/04/30 15:11
 shell编程之-文件名的匹配

shell提供了一套完整的字符匹配机制,这里说明以下文件名的匹配规则。

特殊字符:
* 匹配文件名中的任何字符串,包括空串
? 匹配文件名中的任意单个字符
[...] 匹配[]中所包含的任何字符
[!...] 匹配[]中非感叹号!之后的字符


1,使用*
该符号可以匹配文件名中的任何字符串,下面是一些实用的例子。
(1)ls app*                         #列出一app开头的所有的文件
(2)ls *.doc                        #列出后缀为.doc的所有文件
(3)cl*.doc                         #列出以cl开头且后缀为.doc的所有文件名
(4)ls -l | grep ^d                 #列出该目录中的所有是目录的文件

2,文件名中单个字符的匹配
(1)ls ??R*      #列出第三个字符是R的所有文件名
(2)ls boot.???.*        #列出以boot.开头的后加三个字符和一个.的所有文件名

3,文件名的或操作
(1)ls [io]*     #列出所有以i或o字母开头的文件名
(2)ls [0-9]*    #列出以0-9数字中任意一个开头的文件名
(3)ls [a-z]*
(4)ls [!0-9]*   #列出开头不是0-9之间的任意数字的所有文件名
(5)ls *.[0-9]   #列出所有以0-9之间任意一个数字结尾的文件名
原创粉丝点击