* 匹配任何长度的任何串
? 匹配单个字符
[...] 匹配单个括号内的字符,[]中的-,!具有特殊含义,如:
$ echo [a-z]*
显示首字母在a-z范围内的文件或目录名
$ echo [a,b]*
显示首字母为a或b的文件或目录名
$ echo [!a]*
显示首字母不为a的文件或目录名(使用!时,!必须是[后的第一个字符)
!还可与-和,一起使用
在Bash 2.0以后的版本中,若用shopt打开了extglob选项(shopt -s extglob),
那么还可以扩展的模式表达式(模式表达式是指那些包含了一个或多个shell通配
符的字):
*(pattern [|pattern] ...) 匹配模式的零次或多次出现
+(pattern [|pattern] ...) 匹配模式的一次或多次出现
@(pattern [|pattern] ...) 匹配模式的一次出现
?(pattern [|pattern] ...) 匹配任何一个模式.与*不同的是它不匹配
多个模式或模式的重复出现
!(pattern [|pattern] ...) 与?类似,不过是不包括指定模式的串
应该注意到,模式表达式的定义是递归的,每个表达式都可以包含一个或多个
模式,而且模式表达式也是可以嵌套的.
2.数据或程序控制使用的特殊字符:
主要有:
> (file) 输出重定向到文件
>> (file) 输出重定向到文件,内容加到已存在的文件尾部
< (file) 输入重定向到文件
; 命令分隔符
| 管道符,把一条命令的输出重定向为另一命令的输入
& 放在命令之后强迫命令在后台执行
`` 命令替换,重定向一条命令的输出为另一命令的参数
3.用于引用和逃逸的特殊字符:
逃逸符\ 表示以后的字符不具有特殊的含义或不是Shell的函数,
除此之外,Bash还可以识别一些C语言中的转义序列,如:
\a 响伶
\b 回退
\e Escape
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 字符 特殊 模式 pattern 匹配 命令 文件 ... 一个 可以 |
注册
个人空间
