linux shell脚本为什么不能执行if命令

NAME_LIST="web"

for NAME in $NAME_LIST
do
PID_NUM_SUM=`ps aux | grep $NAME | wc -l`
SYS_LOAD=`uptime | awk '{print $(NF-2)}'|sed 's/,//'`
LOAD_VULE=`awk 'BEGIN{print('"$SYS_LOAD"'>='"$SYS_LOAD_MAX"'?"1":"0")}'`
if [$LOAD_VULE=1] ;then
echo $(date +"%y-%m-%d %H:%M:%S") "killall $NAME" "(LOAD:$SYS_LOAD)" >> /tmp/autoreboot.log
kill -9 `ps -ef|grep 'platformdb.cfg' | awk '{print $2}'`
echo $(date +"%y-%m-%d %H:%M:%S") "start $NAME" "(LOAD:$SYS_LOAD)" >> /tmp/autoreboot.log
else
echo "$NAME very health!(LOAD:$SYS_LOAD)" > /dev/null
fi
done

执行为什么会报如下错误:
sh autoreboot.sh
autoreboot.sh: line 9: [0]: command not found
报错内容应该是:
autoreboot.sh: line 9: [0=1]: command not found

第1个回答  推荐于2017-11-25
autoreboot.sh: line 9: [0=1]: command not found
----
f [$LOAD_VULE=1]
这里错了,要改成
f [ $LOAD_VULE -eq 1 ]

特别强调下,"["后面有空格,“]”前面有空格。本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网