bash中如何实现条件判断?
条件测试类型:
整数测试
字符测试
文件测试
条件测试表达式
[EXPRESSION] 命令测试法
` EXPRESSION` 关键字测试法
test EXPRESSION
整数比较:
-eq:是否相等
-ne:是否不等
-gt:是否大于
-lt:是否小于
-ge:大于或等于
-le:小于或等于
命令的逻辑关系
逻辑与:&&-->第一个为假时,第二个不做判断;
逻辑或:||
变量名称:只能包含字母、数字和下划线,不能以数字开头;
不应该跟系统已有的变量名重复,不然会覆盖掉;
最好见名知意
条件判断:
if 判断语句;then
语句...
fi
if 判断语句;then
语句1
语句2
...
else
...
...
fi
if 判断语句;then
语句1
...
elif
语句
...
else
...
fi
shell中如何进行算术运算
1.let 算术表达式
let c=$A+$B
2.$[算术表达式]
c=$[$A+$B]
3.$((算术表达式))
c=$(($A+$B))
4.expr
c=`expr $A + $B`
exit:退出脚本
文件测试:
-e FILE :测试文件是否存在
-f FILE :测试是否为普通文件
-d ... :测试指定路径是否为目录
-r :测试当前用户对指定文件是否有读的权限
-w :测试当前用户对指定文件是否有写的权限
-x :测试当前用户对指定文件是否有执行的权限
列:[ -e /et/inittab ]
测试脚本语法:
bash -n 脚本
bash -x 脚本:单步测试
bash变量类型:
本地变量,环境变量
位置变量:$1,$2,$3...shift[数量]轮替
特殊变量:
$?:上条命令的执行状态
$#:参数的个数
$*:参数列表
$@:参数列表