2

Hi guys I'm getting this error message when running my KSH script:

./file.sh: line 16: syntax error at line 22: `done' unexpected

My code is as follows:

#!/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"
lecardo
  • 143

2 Answers2

5

You're missing the do keyword:

while ...; do
...
done
glenn jackman
  • 85,964
3

You need a do after the while:

while test $count -ge 1
do
   ...
done
rici
  • 9,770