假如 a=b, b=c 我们 echo $a的值还是 b,不会是c,因为这是不同的变量, shell不会让 a=c, 我们只好利用eval来实现:- # a=b
-
# b=c
-
# eval echo \$$a
-
c
幸运的是, 在Bash版本2中引入的${!variable}形式使得使用间接引用更加直观了:
- # a=b
-
# b=c
-
# echo ${!a}
-
c
同样我们也可以间接修改变量的值:
- # a=b
-
# b=c
-
-
# eval $a=d //间接修改b的值
-
-
# eval ${!a}=e //间接修改c的值
阅读(2780) | 评论(0) | 转发(0) |