意外令牌'elif'附近的错误

时间:2015-04-14 06:18:43

标签: bash

我收到错误:

ex02.sh: line 6: syntax error near unexpected token `elif'
ex02.sh: line 6: `elif [ #$ -gt 1 ] ; then'

我的剧本:

#!/bin/bash

if [ #$ -le 1 ] ; then
        echo 'usage: ex02.sh max|min|sum v2 [v2 ...]'
        exit 1
elif [ #$ -gt 1 ] ; then
        if [ "$1" = "min" ] || [ "$1" = "max" ] || [ $1 = "sum" ]; then
                echo "ERROR: invalid command: $1"
                exit 2
        fi
fi

我已经在线查看,大多数答案似乎都说是由于回车被保存在文件中。我使用vi创建了这个并将换行符设置为unix。有什么问题?

1 个答案:

答案 0 :(得分:1)

您应该使用“$#”代替#$