3

在 bash 中,如果我有:

y=10
x='y'
echo $x # prints 'y'

现在我想$y通过 $x:

echo ${$x} # error: "bad substitution"; I want to print 10

如何使用 name 查找变量值$x

4

2 回答 2

7

请参阅 bash 手册中的参数扩展:

echo ${!x}
于 2012-06-06T17:33:02.417 回答
0

转义外部美元符号时eval用于间接引用

eval echo "\${$x}"

分配给变量

eval "z=\${$x}"
echo "$z"
# 10
于 2012-06-06T17:41:27.343 回答