shell条件判断(数字判断、文件判断、逻辑判断等)

发布时间:2019-07-20编辑:脚本学堂
本文介绍了shell条件判断的多种方式,包括shell对字符串的判断、对数字的判断、对文件的判断,逻辑判断等,其中涉及了shell if语句,shell case语句等的用法。

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]