>[success] # 多命令顺序执行 ~~~ 1.和js 的逻辑运算符具备含义是一样的 例子如下 echo 1;echo 2; # 1 2 echo 1&&echo 2; # 1 2 echo 1||echo 2; # 1 ~~~ | 多命令执行符 | 格式 | 作用 | 案例 | | --- | --- | --- | --- | | ; | 命令1;命令2 | 多个命令执行,命令之间没有任何逻辑联系 | echo 1;echo 2; | | && | 命令1&&命令2 | 逻辑与 当命令1正确执行,则命令2才会执行 当命令1执行不正确,则命令2不会执行 | echo 1&&echo 2; | | \|\| | 命令1 \|\| 命令2 | 逻辑或 当命令1执行不正确,则命令2才会执行 当命令1正确执行,则命令2不会执行 | echo 1\|\| echo 2; | >[success] # 管道符号 ~~~ 1.命令1的正确输出会作为命令2的操作对象 2.命令1|命令2 3.举例子 ls /etc/ | more netstat -an | grep ESTABLISHED | wc -l ~~~ >[success] # 通配符 * 匹配文件名和目录名 | 通配符 | 作用 | | --- | --- | | ? | 匹配一个任意字符 | | \* | 匹配0个或任意字符,也就是可以匹配任意内容 | | \[\] | 匹配中括号中任意一个字符 | | \[-\] | 匹配中括号中任意一个字符,-代表范围 | | \[^\] | 匹配不是中括号中的一个字符 | >[success] # 其它符号 | 符号 | 作用 | | --- | --- | | '' | 单引号。在单引号中所有的特殊符号,如$和`都没有特殊含义 | | "" | 双引号,在双引号里特殊符号都没有特殊含义,但是 $ ` \\ 例外,拥有调用变量值,引用命令和转义的含义 | | `` | 反引号,扩起来的是系统命令 | | $() | 和反引号一样 | | # | 在shell脚本中,#开头的行代表注释 | | $ | 用于调用变量的值 | | \\ | 转义符号 | ~~~ echo '$PATH' echo "$PATH" echo `ls` echo $(ls) echo -e "a\tb" ~~~ * 打印如图 ![](https://img.kancloud.cn/01/10/0110876e20c720dc20ae3b45b0b9c116_1196x283.png)