【摘要】:单字符的替换除了用?中括号里面可以列出具体的字符,字符之间是或的关系。0-9]表示任意一个非数字的字符,[!p-z]*表示不以p到z之间的字母开头的文件名:注意,用中括号指定范围的时候,前面字符的序号不应大于后面的字符,例如[z-a]是不合理的:内置变量GLOBIGNORE的值会影响文件名的匹配。本来*代表目录下所有的文件:把GLOBIGNORE的值设置如下,意思是,名字以a和以b开头的文件,被忽略匹配:现在再运行ls*,名字以a和以b开头的文件不显示了:
单字符的替换除了用?之外,还可以使用中括号。中括号里面可以列出具体的字符,字符之间是或的关系。例如,[amz]*表示名字以a,或以m,或以z开头的文件名:
中括号里面还可以给出字符的范围,例如[a-z]表示任意一个小写字母,[A-Z]表示任意一个大写字母,[A-Za-z]表示任意一个字母,[b-mx-z]表示b到m、x到z之间的任意一个小写字母。ls[a-z]将显示名字为小写字母的单字符文件名:
ls[a-k][a-k]将显示名字包含a到k之间的字母的双字符文件名:
[a-k]*表示以a到k之间的字母开头的文件名:
*[0-9]*表示包含一个阿拉伯数字的文件名:
*[2-9]*表示包含一个2到9的阿拉伯数字的文件名:
中括号里面的第一个字符为!时,表示取反匹配。例如,[!0-9]表示任意一个非数字的字符,[!a-z]表示任意一个非小写字母的字符,[!az]*表示不以字母a和z开头的文件名:(www.xing528.com)
[!p-z]*表示不以p到z之间的字母开头的文件名:
注意,用中括号指定范围的时候,前面字符的序号不应大于后面的字符,例如[z-a]是不合理的:
内置变量GLOBIGNORE(见表4-3)的值会影响文件名的匹配。本来*代表目录下所有的文件:
把GLOBIGNORE的值设置如下,意思是,名字以a和以b开头的文件,被忽略匹配:
现在再运行ls*,名字以a和以b开头的文件不显示了:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。