shell 脚本中出现错误替换错误
Getting bad substitution error in shell script
我有一个变量 COUNTRY="INDIA"
和另一组变量:-
INDIA_POPULATION="5,00,00,000", CHINA_POPULATION="6,00,00,000".
在脚本中,我尝试使用命令调用它们:-
echo ${ ${COUNTRY}_POPULATION }
但是我遇到了错误的替换 错误。有人可以告诉我如何解决吗??
您放错了括号:{$COUNTRY}_POPULATION
应该是 ${COUNTRY}_POPULATION
。但即便如此,它也不会像你期望的那样工作。使用bash 间接扩展:
$ name="${COUNTRY}_POPULATION"
$ echo "${!name}"
5,00,00,000
或者,如果你有 bash 版本 >= 4.3,你也可以使用 refname:
$ declare -n name="${COUNTRY}_POPULATION"
$ echo "$name"
5,00,00,000
我有一个变量 COUNTRY="INDIA"
和另一组变量:- INDIA_POPULATION="5,00,00,000", CHINA_POPULATION="6,00,00,000".
在脚本中,我尝试使用命令调用它们:-
echo ${ ${COUNTRY}_POPULATION }
但是我遇到了错误的替换
您放错了括号:{$COUNTRY}_POPULATION
应该是 ${COUNTRY}_POPULATION
。但即便如此,它也不会像你期望的那样工作。使用bash 间接扩展:
$ name="${COUNTRY}_POPULATION"
$ echo "${!name}"
5,00,00,000
或者,如果你有 bash 版本 >= 4.3,你也可以使用 refname:
$ declare -n name="${COUNTRY}_POPULATION"
$ echo "$name"
5,00,00,000