[英]How to use variable inside the array
我試圖在數組變量中使用變量,但是它沒有按預期工作。
碼
ENV2[0]=567
ENV1[0]=123
ENV1[1]=789
if [ $1 -eq 1 ]
then
name=ENV1
echo "${name[0]}"
echo "${name[1]}"
else
name=ENV1
echo "${name[1]}"
fi
輸出 :ENV1而不是“ 123”,而是在第二回顯部分打印“ ENV1”和空白行。 請幫助獲得正確的輸出,我是初學者。 謝謝
name=ENV1
不會將變量ENV1
的內容分配給變量name
,而是分配實際的字符串ENV1 。
要將數組ENV1
復制到name
,可以使用以下命令:
name=$ENV1
這與name=${ENV1[0]}
。 因為未指定索引,所以將復制數組變量的第一個元素。 因此,這里僅考慮索引0。
要將ENV1
所有值分配給name
,應使用此命令:
set -A name "${ENV1[@]}"
這ENV1
數組變量name
設置為ENV1
所有元素。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.