您的位置:首页 > 运维架构 > Shell

解决 shell 编程 错误 bash: [: missing `]'

2017-02-21 17:38 363 查看
错误代码:

#!bin/bash
PRICE=$(expr $RANDOM%1000)
TIMES=0
echo "$PRICE"
while true
do
read -p"please input number:" INT
let TIMES++
if [ $INT -eq $PRICE ];then
echo "you are right!"
echo "$TIMES"
exit 0
elif [ $INT -gt $PRICE ]; then
echo "too hight!"
else
echo "too low!"
fi
done
echo "you are right!"


正确代码:

#!bin/bash
PRICE=$(expr $RANDOM%1000)
TIMES=0
echo "$PRICE"
while true
do
read -p"please input number:" INT
let TIMES++
if [[ $INT -eq $PRICE ]];then
echo "you are right!"
echo "$TIMES"
exit 0
elif [[ $INT -gt $PRICE ]]; then
echo "too hight!"
else
echo "too low!"
fi
done
echo "you are right!"


二者仅仅在于if条件的语句多加了一个[ ],

是因为变量INT在执行的时候可能为空值。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  bash Linux shell