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