shell/if_test/ target=_blank class=infotextkey>shell条件判断的多种形式
一、概要
1.if与[之间要有空格(shell if语句)
2.[]与判断条件之间也必须有空格
3.]与;之间不能有空格
二、shell对字符串的判断
1.if [ str1=str2 ];then fi ----当两个字符串相同时返回真
2.if [ str1!=str2 ];then fi ----当两个字符串不相等时返回真
3.if [ -n str1 ];then fi ----当字符串的长度大于0时返回真 (判断变量是否有值)
4.if [ -z str1 ];then fi ----当字符串的长度为0时返回真
三、对数字的判断
1.int1 -eq int2 --相等
2.int1 -ne int2 --不相等
3.int1 -gt int2 --大于
4.int1 -ge int2 --大于等于
5.int1 -lt int2 --小于
6.int1 -le int2 --小于等于
四、文件的判断
1. -r file --用户可读为真
2. -w file --用户可写为真
3. -x file --用户可执行为真
4. -f file --文件存在且为正规文件为真
5. -d file --如果是存在目录为真
6. -c file --文件存在且为字符设备文件
7. -b file --文件存在且为块设备文件
8. -s file --文件大小为非0为真,可以判断文件是否为空
9. -e file --如果文件存在为真
五、逻辑判断
1. -a --与
2. -o --或
3. ! --非
附,shell case语句用法
case $var in
表达式1)
若干语句...
;;
表达式2)
若干语句...
;;
*)
若干语句
;;
esac
六、算数运算
1.取余数$(($i%100))
$[]表示数学运算$[$i%100]