定义

shell中map必须申明才能使用

1
declare -A userIds

初始化

1
2
3
4
5
# 方式一,item项目中间不需要逗号
userIds=(['bar']="1" ['foo']="2")
# 方式二
userIds['bar']="1"
userIds['foo']="2"

输出

1
2
3
4
5
6
7
8
9
10
# 输出value
echo "${userIds[*]}"
# 或者
echo "${userIds[@]}"
# 1 2
# 输出key
echo "${!userIds[*]}"
# 或者
echo "${!userIds[@]}"
# bar foo

循环

1
2
3
4
5
6
7
8
9
# 输出key
for key in "${!userIds[@]}"; do
echo $key
echo ${userIds[$key]}
done
# 输出value
for value in "${userIds[@]}"; do
echo $value
done

@换成*效果一样