KSH while 循环导致问题

KSH while 循环导致问题

大家好,我在运行 KSH 脚本时收到此错误消息:

./file.sh:第 16 行:第 22 行语法错误:“完成”意外

我的代码如下:

#!/bin/ksh
#

count=$#           #count is assigned num of parameters
num=$1             #assign parameter 1 to num

if test count -gt 9 #make sure theres only 9 numbers
    then
       echo "Only 9 parameters allowed"
       exit
fi


echo "Number of Parameters you passed: $count"
printf  "$num + \c"
sum=$1

while test $count -ge 1
     shift 1     #move numbers 1 to left
     num=$1      #assign new value to num
     printf "num + \c"
done

((sum = sum + num))

echo "$num = $sum"

答案1

您缺少do关键字:

while ...; do
...
done

答案2

您需要do在以下内容之后while

while test $count -ge 1
do
   ...
done

相关内容