簡體   English   中英

shell 腳本中出現錯誤替換錯誤

[英]Getting bad substitution error in shell script

我有一個變量COUNTRY ="INDIA"

和另一組變量:- INDIA_POPULATION ="5,00,00,000", CHINA_POPULATION ="6,00,00,000"。

在腳本中,我嘗試使用命令調用它們:-

回聲 ${ ${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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM