首页 > 系统服务 > 详细

求助:关于shell数值比较的错误提示

时间:2019-08-21 20:39:08      阅读:103      评论:0      收藏:0      [点我收藏+]

今天写了个脚本,过不了错误这一关,求大神路过瞟一眼。

技术分享图片

1 #!/bin/bash
2 #disk use
3 disk_use() {
4 DISK_LOG=/tmp/disk_use.tmp
5 DISK_TOTAL=`fdisk -l |awk ‘/^Disk.*bytes/ &&/\/dev/{print $2" ";printf "%d",$3;print "GB"}‘`
6 USER_RATE=`df -h |awk ‘/^\/dev/{print int($5)}‘`
7 }
8 disk_use
9 for i in "$USER_RATE"
10 do
11 if [ $i -gt 90 ] &>/dev/null;then
12 PART=`df -h |awk ‘{if(int($5)==‘‘‘$i‘‘‘){print $6}}‘`
13 echo "$PART = $i" >> $DISK_LOG
14 fi
15 done
16 echo "-------------------------------------"
17 echo -e "Disk total:\n${DISK_TOTAL}"
18 if [ -f $DISK_LOG ];then
19 echo "------------------------------"
20 cat $DISK_LOG
21 echo "------------------------------"
22 rm -f $DISK_LOG
23 else
24 echo "------------------------------"
25 echo "disk use rate no than 90% of the partition."
26 echo "------------------------------"
27 fi

不加&>/dev/null就一直提示错误,好像表达式也没问题?

错误提示:(变量和90加不加双引号都这个)

[root@localhost ~]# ./disk_use.sh

./disk_use.sh: line 11: ((: >= 90 : syntax error: operand expected (error token is ">= 90 ")

。。。。。。。。。。。。

改用 if [ "$i" -gt 90 ]

提示:

[root@localhost ~]# ./disk_use.sh

./disk_use.sh: line 11: [: : integer expression expected

不用双引号:

[root@localhost ~]# ./disk_use.sh

./disk_use.sh: line 11: [: -gt: unary operator expected

求助:关于shell数值比较的错误提示

原文:https://www.cnblogs.com/lov1394/p/11390698.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!