Shell脚本,if语句检查环境变量的值

eth*_*ark -1 shell environment-variables

我有一个需要更改的 shell 脚本,以便仅在环境变量的值为 时才起作用true。如果重要的话,变量将来自 Heroku。

我的脚本如下所示:


if [[ $SANDBOX_SITE = "true" ]]
then
    *run existing script*
else 
    exit
fi
Run Code Online (Sandbox Code Playgroud)

我可以看到环境变量存在,printenv并且我运行了脚本heroku run bash --app *appname*,所以我知道它位于正确的 shell 中。任何提示或建议将不胜感激。

*编辑
我忘了添加,脚本每次都会退出。

pur*_*aso 5

您可能忘记导出环境变量。环境变量可能存在于当前 shell 中,但如果未导出,则无法用于子 shell。使用:

export SANDBOX_SITE="true"
Run Code Online (Sandbox Code Playgroud)