關聯陣列
Version >= 4
宣告一個關聯陣列
declare -A aa
在初始化或使用之前宣告關聯陣列是必需的。
初始化元素
你可以按如下方式一次初始化元素:
aa[hello]=world
aa[ab]=cd
aa["key with space"]="hello world"
你還可以在單個語句中初始化整個關聯陣列:
aa=([hello]=world [ab]=cd ["key with space"]="hello world")
訪問關聯陣列元素
echo ${aa[hello]}
# Out: world
列出關聯陣列鍵
echo "${!aa[@]}"
#Out: hello ab key with space
列出關聯陣列值
echo "${aa[@]}"
#Out: world cd hello world
迭代關聯陣列鍵和值
for key in "${!aa[@]}"; do
echo "Key: ${key}"
echo "Value: ${array[$key]}"
done
# Out:
# Key: hello
# Value: world
# Key: ab
# Value: cd
# Key: key with space
# Value: hello world
計算關聯陣列元素
echo "${#aa[@]}"
# Out: 3