我有一个运行变量,假设当前迭代的值为INDEX = 1122
。我已经出口了:
export PRO"$INDEX"=/some/fancy/dirry
现在我想引用这个变量,但如果我这样做:
echo $"PRO$INDEX"
我明白了:
PRO1122
相反,我希望看到:
/some/fancy/dirry
很像echo $PRO1122
的结果。
但是,我当然不能在循环中对值1122
进行硬编码。
答案 0 :(得分:6)
BASH已经有了一个变量引用机制。
你可以这样做:
v="PRO$INDEX"
echo "${!v}"
/some/fancy/dirry
答案 1 :(得分:3)
使用eval
:
eval echo '$PRO'$INDEX
但似乎你应该使用数组而不是将索引嵌入到变量名中。