do
if [ $i -ge 90 ]then
echo $i is A
elif [ $i -ge 80]then
echo $i is B
elif [ $i -ge 70]then
echo $i is C
elif [ $i -ge 60]then
echo $i is D
else
echo $i is 不及格
done
所有的 [ 之後你都没留空格。把
if["$mark" ...
改成
if [ "$mark" ...
if 与 [ 之间,[ 与 “$mark 之间都要有个空格。
另外,你要是把数字放在double quote里面,那麼你不能用 -lt 来比较,因为在double quote里面是个字串,-lt 是用来比较数字的。
可以改写成:
if [ $mark -lt 60 ]
then
echo "Failed"
elif [ $mark -ge 60 -a $mark -lt 70 ]
then
echo "Passed"
elif ....
...
...
else
echo "Sorry ..."
fi
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)