十年运维系列之基础篇 - Linux
作者:曾林
联系:1494445739@qq.com
版权:文章未经同意请勿转载
一、引言
我们经常要在shell下执行命令行程序,而这些命令行程序需要经常使用文件名,因此shell提供了一些特殊字符来帮助快速指定或者筛选一组文件名。这些特殊的字符就被称之为“通配符”。通配符(也被称为文件名替换)允许用户依据字符模式选择文件名。通配符可以与任一个使用文件名为参数的命令一起使用。并且通配符不但可以在命令行程序中起作用,也可以在GUI程序中起作用。
二、通配符
下表中提供了常用的通配符字符、通配符字符类以及实际中使用通配符的实例。
通配符字符表:
| 通配符 | 匹配项 |
| * | 匹配任意多个字符(包括0个和1个) |
| ? | 匹配任一单一字符(不包括0个) |
| [characters] | 匹配任意一个属于字符集中的字符 |
| [!characters] | 匹配任意一个不属于字符集中的字符 |
| [[:class:]] | 匹配任意一个属于指定字符类中的字符 |
通配符字符类表:
| 字符类 | 匹配项 |
| [:alnum:] | 匹配任意一个字母或者数字 |
| [:alpha:] | 匹配任意一个字符 |
| [:digit:] | 匹配任意一个数字 |
| [:lower:] | 匹配任意一个小写字母 |
| [:upper:] | 匹配任意一个大写字母 |
通配符实例:
| 形式 | 匹配项 |
| g* | 以g开头的任一文件 |
| b*.txt | 以b开头,中间有任意多个字符,并以.txt结尾的任一文件 |
| Data??? | 以Data开头,后面跟3个字符的任一文件 |
| [abc]* | 以abc中的任一个开头的任一文件 |
| BACKUP.[0-9][0-9][0-9] | 以BACKUP.开头,后面紧跟3个数字的任一文件 |
| [[:upper:]]* | 以大写字母开头的任一文件 |
| [![:digit:]]* | 不以数字开头的任一文件 |
| *[[:lower:]123] | 以小写字母或数字1、2、3中的任一个结尾的任一文件 |
原文:http://www.cnblogs.com/jplatformx/p/4295873.html