如何在参数扩展中将间接与替换结合起来

如何在参数扩展中将间接与替换结合起来

鉴于

VAR=A-B
A_B=X

我需要XVAR.

我试过了

$ echo ${!VAR/-/_}
-bash: A-B: invalid variable name

这似乎有错误的优先级(!VAR首先扩展)。

$ echo ${!${VAR/-/_}}
-bash: ${!${VAR/-/_}}: bad substitution

(在实际情况中,我关心的VARCIRCLE_USERNAME,我的Github用户名中恰好有一个-,并且我无法-在名称中创建变量)

答案1

当然,在发布此内容后,我立即意识到没有什么可以阻止我做

VAR_REPLACED=${VAR/-/_}
echo ${!VAR_REPLACED}

我仍然对如何一步完成它感兴趣。

相关内容