使用 let 命令的多个间接变量 (GNU/Linux Bash)
Multiple indirect variables with let command (GNU/Linux Bash)
FontName=Ubuntu
FontSize=300
let $FontName$FontSize=21
使用以下方法很容易获取值:
echo $Ubuntu300
21
但是,如何使用变量获得相同的结果?
我试过类似的方法:
echo ${!FontName!FontSize}
但运气不好,我希望我至少接近了!
您必须将新的动态变量分配给一个新的变量,如下所示:
var=$FontName$FontSize
然后使用间接参数展开得到它的值:
echo ${!var}
会输出21
您可能想试试这个:
FontName=Ubuntu
FontSize=300
let ${FontName}${FontSize}=21
echo $Ubuntu300
21
出于好奇,而不是分配新变量:
echo $((${FontName}${FontSize}))
21
FontName=Ubuntu
FontSize=300
let $FontName$FontSize=21
使用以下方法很容易获取值:
echo $Ubuntu300
21
但是,如何使用变量获得相同的结果?
我试过类似的方法:
echo ${!FontName!FontSize}
但运气不好,我希望我至少接近了!
您必须将新的动态变量分配给一个新的变量,如下所示:
var=$FontName$FontSize
然后使用间接参数展开得到它的值:
echo ${!var}
会输出21
您可能想试试这个:
FontName=Ubuntu
FontSize=300
let ${FontName}${FontSize}=21
echo $Ubuntu300
21
出于好奇,而不是分配新变量:
echo $((${FontName}${FontSize}))
21