当前位置: 技术问答>linux和unix
[linux shell] 如何获得以一个变量的值为名的变量的值
来源: 互联网 发布时间:2016-05-02
本文导语: VAR1="VAR2" VAR2=1111 有没有办法可以通过VAR1来获得VAR2的内容 最直接想到的方法是 ${${VAR1}} 但是这样不行 假设 VAR1=1 VAR2=2 VAR3=3 VAR4=4 VAR5=5 有一个变量名列表VAR_LIST="VAR1 VAR2 VAR3 VAR5" 希望能用上面提问的方式显示列表...
VAR1="VAR2"
VAR2=1111
有没有办法可以通过VAR1来获得VAR2的内容 最直接想到的方法是 ${${VAR1}} 但是这样不行
假设
VAR1=1
VAR2=2
VAR3=3
VAR4=4
VAR5=5
有一个变量名列表VAR_LIST="VAR1 VAR2 VAR3 VAR5"
希望能用上面提问的方式显示列表里所有变量的值
for var in ${VAR_LIST}; do
echo ${${var}}
done
这样可以通过修改列表的内容来方便的配置想要显示的变量
VAR2=1111
有没有办法可以通过VAR1来获得VAR2的内容 最直接想到的方法是 ${${VAR1}} 但是这样不行
假设
VAR1=1
VAR2=2
VAR3=3
VAR4=4
VAR5=5
有一个变量名列表VAR_LIST="VAR1 VAR2 VAR3 VAR5"
希望能用上面提问的方式显示列表里所有变量的值
for var in ${VAR_LIST}; do
echo ${${var}}
done
这样可以通过修改列表的内容来方便的配置想要显示的变量
|
#!/bin/bash
#
var=1
var2=var
eval "echo $$(echo $var2)"
VAR1=1
VAR2=2
VAR3=3
VAR4=4
VAR5=5
VAR_LIST="VAR1 VAR2 VAR3 VAR5"
for var in ${VAR_LIST}; do
eval "echo $$(echo $var)"
done