目录
1.条件语句
1.1测试
test 选项 对象
-e //测试文件是否存在
echo $? //代表上一次命令执行结果是否正确 0代表正确 非0代表不正确
-e | 目录文件皆可 |
-d | 目录 |
-f | 文件 |
-r | 读 |
-w | 写 |
-x | 执行 |
1.2比较整数数值
整数1 -操作符 整数2
-eq | 等于 |
-gt | 大于 |
-lt | 小于 |
-ge | 大于等于 |
-le | 小于等于 |
-ne | 不等于 |
1.3字符串比较
= | 字符串内容相同 |
! = | 字符串内容不同,!号表示相反的意思 |
-z | 字符串内容为空 |
-n | 字符是否存在 |
[ 字符串1 = 字符串2 ] //是否相同
[ 字符串1 ! = 字符串2 ] //是否不相同
[ -z 字符串 ] //是否为空
[ -n 字符串 ] //字符是否存在
1.4逻辑测试
-a或&& :逻辑与,“而且”的意思,全真才为真
-o或|| :逻辑或,“或者”的意思,一真即为真
! :逻辑否
[ 表达式1 ] && [ 表达式2 ] 等同于 [ 表达式1 -a 表达式2 ] [[ 表达式1 && 表达式2 ]]
[ 表达式1 ] || [ 表达式2 ] 等同于 [ 表达式1 -o 表达式2 ] [[ 表达式1 || 表达式2 ]]
2.if条件语句的语法
2.1if的单分支
if 判断条件;
then 条件为真的分支代码
fi
2.2if的双分支
if 判断条件
then
命令语句
else
命令语句
fi
实验一:判断是否为管理员
2.3if的多分支
if 判断条件1
then
条件1为真的分支代码
elif 判断条件2
then
条件2为真的分支代码
elif 判断条件3;then
条件3为真的分支代码
...
else
以上条件都为假的分支代码 托底
fi
实验一:判断考试成绩
实验二:石头剪刀布
3.case条件语句
case $变量in
1)
命令序列1
;;
2)
命令序列2
;;
……
*)
;;
esac