常用的判断类型有哪些?
①、判断文件类型:
-d:存在并且为目录才为真
-e:存在就为真
-f:存在并且为普通文件才为真
②、判断文件权限:
-r -w -x
③、数值之间的比较:
-eq -ne -gt -lt -ge -le
④、字符串的判断:
-z(为空('')返回真) -n(不为空返回真) ==(也可写=) !=
⑤、判断的多重性:
-a(and) -o(or) !
shell编程中条件判断的写法格式是什么?
①、test或者中括号[]
test -e a.log
#等价于[ -e a.log ]#处理输出结果 echo $?
[ -e a.log ]&&echo "yes"||echo "no"
[ 23 ge 40 ]&&echo "yes" || echo "no " #no
[ -n '' ]&&echo "yes" || echo "no " #no
[ -z "$sdfasfi" ]&&echo "yes" || echo "no " # yes
[ ! -e a ]&&echo "不存在" || echo "存在 " # yes
②、if判断的两种格式:
if [ 条件判断表达式 ];then
elif [ 条件判断表达式 ];then
else
fi
或者
if [ 条件判断表达式 ]then
else
fi
案例:判断根分区是否使用超过了80:
rate=`df -h|grep "/dev/sd1"|awk '{printf $5}'|cut -d "%" -f 1`
if [ $rate -gt 80 ];then
echo "full"
elseecho "nofull"
fi
结果:nofull