条件测试时拒绝Shell脚本权限

时间:2013-05-15 16:39:53

标签: linux shell unix

每当我尝试运行我的shell脚本时,如果测试的话,我会收到4个不同的错误。

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

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

1 个答案:

答案 0 :(得分:5)

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

if [ "$VAR1" = "Condition_1" ] ; then
    # do stuff
fi