请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

[: missing `]'

#!/bin/bash

while true
do
read -p "Pls input a positive number: " num
expr $num + 1 &> /dev/null
if [ $? -eq 0];then
if [ expr $num > 0 -eq 1 ];then
for ((i=1;i<$num;i++))
do
sum=expr $sum + $i
done
echo "1+2+3+…+num=num=num=sum"
exit
fi
fi
echo "error,input enlegal"
continue
done

执行以上命令一老报错,报错如下:
Pls input a positive number: 3
expr_1.sh: line 8: [: missing `]'
error,input enlegal
请问是哪里出错了?

正在回答 回答被采纳积分+3

插入代码

1回答

酷田 2021-07-16 11:33:16

之所以提示[: missing `]'是因为第7行的写法有问题,0后面应该有空格,正确写法如下

if [ $? -eq 0 ];then

https://img1.sycdn.imooc.com//szimg/60f0fdd109f3266208180836.jpg

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号