Shell脚本中对小数进行比较 | 您所在的位置:网站首页 › 脚本语言比较大小 › Shell脚本中对小数进行比较 |
直接上原shell if [ $TBSUSE -gt 80 ] then ... else ... fi此时如果$TBSUSE传入的不是整数的话,那么会提示错误: ./monitor_tbs.sh: line 62: [: 80.48: integer expression expected 看这错误的意思是 参数只能传入整数,非整数的话不能使用 -gt来比较大小 (同理,-lt\-eq\-ne\-ge\-le 都是不行的) 处理办法: 1.使用expr if [ `expr $TBSUSE \> 80` -eq 1 ] then ... else ... fi需要注意的是,[ `是 `而不是' 2.使用br if [ `echo "$TBSUSE > 80"|bc` -eq 1 ] then ... else ... fi3.使用awk进行判断 echo 'imput var:' read TBSUSE if [ `awk -v var1=$TBSUSE -v var2=80 'BEGIN{print(var1>var2)?1:0}'` -eq 1 ] then ... else ... fi
|
CopyRight 2018-2019 实验室设备网 版权所有 |