字典
在bash 3.x(bash -version)还是别用字典了,
这里的例子只针对bash 4.x
- 定义
declare -A m_dict
m_dict=(
["key1"]="value1"
["key2"]="value2"
) # 个人比较喜欢这种方式
或者m_dict=(["key1"]="value1" ["key2"]="value2")
或者:
m_dict["key1"]="value1"
m_dict["key2"]="value2"
- 访问
# 通过key访问
v1=${m_dict[$key]}
v2=${m_dict["value2"]}
# 打印所有key值
echo ${!m_dict[*]}
# 打印所有value
echo ${m_dict[*]}
# 遍历key值
for key in $(echo ${!m_dict[*]})
do
echo "$key : ${m_dict[$key]}"
done
如果key不存在,则访问的v为空字符串
数组
- 定义
array=(
itme1
item2
item3
)
#或者
array=(itme1 item2 item3) # 空格分割
arr2=`seq 1 2 1o` # 1,3,5,7,9... seq(start step end)
- 访问
# 遍历
for item in ${array[@]}; # ${}里面不能有空格
do
# $item ...
done
# 下标访问
echo ${array[i]}
# 显示所有下标
echo ${!array[*]}
# 显示所有元素
echo ${array[@]}
# 在array数组中新增元素
array=("${array[@]}" "a" "b")