元符号

Shell提供了一套完整的字符串模式匹配规则,帮助你按模式来匹配文件。

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

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

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

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

当Shell遇到上述字符,就会把它们当做特殊字符,而不是文件名中的普通字符,这样用户就可以用它们来匹配相应的文件名。

使用*

$ ls he* #列出he开头的文件
$ ls *.txt #列出.txt结尾的文件
$ ls he*.txt #列出以he开头并且以.txt结尾的文件

$ cd dirnam* #可以用*省去输入整个路径名的麻烦

使用?

$ ls ???T* #列出前面任意三个字符紧接着T,然后跟任何字符的文件
$ ls foo??.txt #列出foo开头紧跟任意两个字符,并以.txt结尾的文件

使用[...][!...]

$ ls [io]* #列出以i、o、io开头的文件
$ ls bar[0-9] #[0-9]表示0~9范围内任意单个数字,列出bar开头以一个数字结尾的文件
$ ls [!0-9]* #列出非数字开头的文件
$ ls [A-Z]* #列出大写字母开头的文件
$ ls [a-z]* #列出小写字母开头的文件

results matching ""

    No results matching ""