首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >KSH错误第26行:第41行语法错误:“`done”意外

KSH错误第26行:第41行语法错误:“`done”意外
EN

Stack Overflow用户
提问于 2014-05-18 20:34:16
回答 1查看 2.9K关注 0票数 0

当我在终端上输入超过一个参数时,请继续处理这个问题:

./学习1 2

我从while循环中总结了出来,但是注释掉的东西还没有找到原因。

代码语言:javascript
复制
#!/bin/ksh
#
count=$#

if test $count -lt 1
then
    echo "Enter at least 1 number"
    exit
elif test $count -gt 9
then
    echo "Enter max 9 numbers"
    exit
else
    echo "Parameter check: PASSED"
fi

set -A numbers $@
first=${numbers[0]}

if test $count -eq 1
then
    echo "$first = $first"
    exit
else
    sum=$first
    printf "$first + "
fi

while test "$count" -gt 1
do
    shift
    first=${numbers[0]}
    ((sum = sum + first))
    if test $count -gt 2
    then
    printf "$first + "
    else
    printf "$first = $sum"
    fi
    ((count = count - 1)
done 

它基本上是一个程序,接收用户的输入.也就是说,从屏幕上输入1,2,3,然后加在一起给出一个和

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-18 20:36:19

done之前的台词,

代码语言:javascript
复制
((count = count - 1)

有两个开口,但只有一个关闭支撑。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23726568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档