我有一個關聯數組的變量列表,我想要遍歷並檢索它們的鍵/值對。Bash腳本 - 通過關聯數組列表遍歷「變量」變量名
我遍歷單個關聯數組,通過列出所有的鍵和獲取值,即。
for key in "${!queue1[@]}" do
echo "key : $key"
echo "value : ${queue1[$key]}"
done
棘手的部分是關聯數組的名稱是變量變量,例如,給定count = 5,關聯數組將被命名爲queue1,queue2,queue3,queue4,queue5。
我想基於計數來替換上面的序列,但到目前爲止,括號和eval的每個組合都沒有產生多得多的錯誤替代錯誤。例如:
for count in {1,2,3,4,5} do
for key in "${!queue${count}[@]}" do
echo "key : $key"
echo "value : ${queue${count}[$key]}"
done
done
幫助將非常感激!
現有答案是很大程度上外的日期中的在bash 4.3 namevar支持的上下文(然後)。 –