变量COUNTRY=“INDIA”以及另一组变量:-INDIA_POPULATION=“5,00,00,000”,CHINA_POPULATION=“6,00,00,000”。在脚本中,我尝试使用命令调用它们:echo ${ ${COUNTRY}_POPULATION }但我得到坏的替代x1c 0d1x错误。有人能告诉我怎么解决吗??
ggazkfy81#
你放错了一个括号:{$COUNTRY}_POPULATION应该是${COUNTRY}_POPULATION。但即使这样,它也不会像你期望的那样工作。使用bash * 间接扩展 *:
{$COUNTRY}_POPULATION
${COUNTRY}_POPULATION
$ name="${COUNTRY}_POPULATION" $ echo "${!name}" 5,00,00,000
或者,如果你的bash版本>= 4.3,你也可以使用 nameref:
$ declare -n name="${COUNTRY}_POPULATION" $ echo "$name" 5,00,00,000
1条答案
按热度按时间ggazkfy81#
你放错了一个括号:
{$COUNTRY}_POPULATION
应该是${COUNTRY}_POPULATION
。但即使这样,它也不会像你期望的那样工作。使用bash * 间接扩展 *:或者,如果你的bash版本>= 4.3,你也可以使用 nameref: