条件测试:
$? 返回码
判断命令或者脚本是否执行成功(最近的一条)
0 true 为真就是成功 成立
非0 false 失败或者异常
test命令 可以进行条件测试 然后根据的是返回值来判断条件是否成立。
-e 测试目录或者文件是否存在 exist
-d 测试目录是否存在
-f 测试文件是否存在
-r 测试当前用户是否对文件/目录有读权限
-w 测试当前用户是否对文件/目录有写权限
-x 测试当前用户是否对文件/目录有执行权限
整数比较符(以下操作符只能用于整数之间比较)
-eq 等于 == 既可以比较整数,也可以比较字符串
-ne 不等于 !=
-gt 大于 >
-lt 小于 <
-ge 大于等于 >=
-le 小于等于 <=
比较符的第二种
第三种格式:
\[ \]\]可以使用更高级的模式,可以使用正则表达式,而且,在双括号当中,使用字符串的时候可以不加引号。 第四种: (( )) 运算符 逻辑与和逻辑或 与 \&\& 条件都满足才成立 -a 或 \|\| 有一个条件满足就成立 -o if'语句: ##### 单分支结构 if 后面是条件测试语句 then 命令序列,只有条件测试语句成立,才会执行then的命令模块 fi结束语句  ##### 双分支结构 else 命令序列,只有条件测试语句不成立,才会执行else的命令模块 条件满足执行then,不满足执行else,执行完毕,语句结束。  ##### 多分支结构 if \[
then
命令序列
elif [ ]
then
命令序列
elif [ ]
then
命令序列
else [ ]
命令学历
fi

&> /dev/null
把冗余信息传送到黑洞文件
case语句相当于多分支结构
模式1)变量值 in
命令序列
;;作为结尾
模式2)
命令序列
;;作为结尾
.........
*)相当于else
esac作为结尾