我正在尝试使用一个变量作为另一个变量名称的一部分。
例如,我在一个CONFIG_范围内有一些变量。
echo $CONFIG_systema_value > "testconfig"
echo $CONFIG_systemb_value > "testconfig2"
Run Code Online (Sandbox Code Playgroud)
然后我有一个“决定”变量,比如 WANTEDSYSTEM
echo $WANTEDSYSTEM > "systema"
Run Code Online (Sandbox Code Playgroud)
我需要能够根据需要的系统变量“动态”切换配置。
我最初的尝试我尝试了这样的事情echo $CONFIG_$WANTEDSYSTEM_value,我希望输出testconfig就像我要求它一样echo $CONFIG_systema_value
您可以使用${!name}语法间接引用变量,如下所示:
CONFIG_systema_value=foo
CONFIG_systemb_value=bar
WANTEDSYSTEM=systema
target_var_name="CONFIG_${WANTEDSYSTEM}_value"
echo ${!target_var_name}
Run Code Online (Sandbox Code Playgroud)
(请注意,这是特定于 bash 的语法,但听起来这正是您要寻找的。)
| 归档时间: |
|
| 查看次数: |
39 次 |
| 最近记录: |