一、通配符
通配符 | 作用 |
---|---|
? | 匹配一个任意字符 |
* | 匹配0个或任意多个任意字符,也就是可以匹配任何内容。 |
[] | 匹配中括号中任意一个字符。例如:[abc]代表一定匹配一个字符,或者是a,或者是b,或者是c。 |
[-] | 匹配中括号中任意一个字符,-代表一个范围。例如:[a-z]代表匹配一个小写字母。 |
[^] | 逻辑非,表示匹配不是中括号内的一个字符。例如:[^0- 9]代表匹配一个不是数字的字符。 |
例1 通配符?:匹配一个任意字符
例2 通配符*:匹配0个或任意多个任意字符
例3 通配符[]:匹配中括号中任意一个字符,-代表一个范围
例4 通配符[^]:逻辑非,表示匹配不是中括号内的一个字符。
二、Bash中其他常用特殊符号
符号 | 作用 |
---|---|
' ' | 单引号。在单引号中所有的特殊符号,如“$”和“`”(反引号)都没有特殊含义。 |
" " | 双引号。在双引号中特殊符号都没有特殊含义,但是“$”、“`” 和“\”是例外,拥有“调用变量的值”、“引用命令”和“转义符”的特殊含义。 |
`` | 反引号。反引号括起来的内容是系统命令,在Bash中会先执行它。和$()作用一样,不过推荐使用$(),因为反引号非常容易看错。 |
$() | 和反引号作用一样,用来引用系统命令。 |
# | 在Shell脚本中,#开头的行代表注释。 |
$ | 用于调用变量的值,如需要调用变量name的值时,需要用$name的方式得到变量的值。 |
\ | 转义符,跟在\之后的特殊符号将失去特殊含义,变为普通字符。如$将输出“$”符号,而不当做是变量引用。 |
例1:单引号和双引号
首先我们先给name赋一个值,'$name'将会原封不动输出单引号里的内容,"$name"则会输出赋值后的结果。
例2:反引号和$(),用来引用系统命令。
例3:$,用于调用变量的值
例4:\转义符,跟在\之后的特殊符号将失去特殊含义,变为普通字符。
END