《LINUX与UNIX_Shell编程指南》读书笔记第4章文件名置换

王朝system·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

本章讨论:

• 匹配文件名中的任何字符串。

• 匹配文件名中的单个字符。

• 匹配文件名中的字母或数字字符。

下面就是这些特殊字符:

* 匹配文件名中的任何字符串,包括空字符串。

? 匹配文件名中的任何单个字符。

[...] 匹配[ ]中所包含的任何字符。

[!...] 匹配[ ]中非感叹号!之后的字符。

当s h e l l遇到上述字符时,就会把它们当作特殊字符,而不是文件名中的普通字符,这样

用户就可以用它们来匹配相应的文件名。

对于*和?比较熟悉,跟dos的使用方法差不多

使用星号*可以匹配文件名中的任何字符串

?使用可以匹配文件名中的任何单个字符

4.3 使用[...]和[!...]

使用[ . . . ]可以用来匹配方括号[ ]中的任何字符。在这一方法中,还可以使用一个横杠-来连接两个字母或数字,以此来表示一个范围。在下面的例子中,列出了以i或o开头的文件名:

ls [io]*

使用[ ! 0 - 9 ] *来表示非数字开头的字符串,其中!是非的意思:

ls log.[!0-9]*

为了列出所有以大写字母开头的文件名,可以用:

$ ls [A-Z]*

为了列出所有以小写字母开头的文件名,可以用:

$ ls [a-z]*

为了列出所有以数字开头的文件名,可以用:

$ ls [0-9]*

over

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有  導航