【发布时间】:2020-12-15 12:47:21
【问题描述】:
如果变量不存在,我正在尝试通过脚本创建环境变量。
我正在为此做的事情如下:
local env_variable_name="VARIABLE_"$id
if [[ -z "${env_variable_name}" ]]; then
break
else
local env_var_value=$(generate_value $some_argument)
export "$env_variable_name"="${env_var_value}"
fi
我的目标是创建一个环境变量,我可以为其选择自己的动态名称。如果再次触发脚本,我想防止脚本覆盖最初设置的值。
如果我使用“源”运行脚本,它会按预期工作。我设置并保留的环境变量。如果我再次运行脚本,环境变量的值将被覆盖。正确的方法是通过名称检查环境变量是否存在,但我无法在不知道变量名称如何将其硬编码到脚本中的情况下找到一种方法。
【问题讨论】:
-
实际上在这篇文章中这个答案stackoverflow.com/a/35412000/10781626 是我需要的东西!我已经阅读了这篇文章,但没有深入挖掘。谢谢!
标签: bash shell environment-variables