Bash 如果值是另一个shell变量,如何获取shell变量展开
这会打印出来Bash 如果值是另一个shell变量,如何获取shell变量展开,bash,shell,Bash,Shell,这会打印出来 level_1="hi hello" level_2="hey " level_3="whatsup howdy" echo ${!level*} for i in ${!level*};do j="\$$i" echo $j done 我希望打印$level_1或$level_2的值 任何指向如何实现这一点的指针。您可以使用${!variable}来实现: level_1 level_2 level_3 $level_1 $level_2 $level_3 这将提供
level_1="hi hello"
level_2="hey "
level_3="whatsup howdy"
echo ${!level*}
for i in ${!level*};do
j="\$$i"
echo $j
done
我希望打印$level_1或$level_2的值
任何指向如何实现这一点的指针。您可以使用
${!variable}
来实现:
level_1 level_2 level_3
$level_1
$level_2
$level_3
这将提供所需的输出:
for i in ${!level*};do
j=${!i}
echo $j
done
谢谢,我又找到了一个使用eval的解决方案。。。对于${!level*}中的i;do j=“\$$i”eval”echo$j”完成
hi hello
hey
whatsup howdy