1

每当我尝试运行我的 shell 脚本时,我都会在 4 种不同的 if 测试下遇到错误。

script.sh 45: script.sh: : Permission denied
script.sh 52: script.sh: : Permission denied
script.sh 59: script.sh: : Permission denied
script.sh 324: script.sh: : Permission denied

我在我的脚本上做了一个 chmod 777 所以每个人都有权限。脚本运行如下:

./script fileToUse

以下是它给出错误消息的那些行的样子:

if ( "$VAR" == "Condition_1" )
then
    do stuff
elif ( "$VAR" == "Condition_2" )
then 
    do stuff
elif ( "$VAR" == "Condition_3" )
then 
    do stuff
else
    do stuff
fi

324 行如下所示:

if ( "$flagIsSet" -eq 0 )
then
    do stuff
fi

知道为什么我可能会收到此错误消息及其含义吗?

4

1 回答 1

6

括号运行一个子shell。使用括号进行比较:

if [ "$VAR1" = "Condition_1" ] ; then
    # do stuff
fi
于 2013-05-15T16:45:59.877 回答