Shell:在另一个变量名中使用变量(连接)

时间:2014-10-30 07:59:39

标签: shell concatenation

我有一些名为

的全局变量
ENV_URL_TEST1

ENV_URL_TEST2

ENV_URL_INT1

等等。

我的问题: - >我想使用另一个变量($ ENV)来回显这些变量的值:

echo ${ENV_URL_$ENV}

我有String" TEST1"或" TEST2"或" INT1"在那个$ ENV变量中等等。

上述尝试导致错误的替换错误。 我的问题有解决办法还是不可能?

P.S。想在jenkins post build步骤中使用它,意思是执行shell 步骤。

1 个答案:

答案 0 :(得分:2)

使用eval

$ ENV=TEST1
$ ENV_URL_TEST1='test_string'
$ eval echo \${ENV_URL_$ENV}
test_string
$ eval NEW_VAR=\${ENV_URL_$ENV}
$ echo $NEW_VAR
test_string