Linux shell 中的关联数组

35 篇文章 0 订阅
Linux shell中的关联数组

关联数组是这样的数组,它的每个数据元素与一个键相对配对,该键用于识别数据元素。由于散列函数用来创建关联数组中的指定元素,并在关联数组中查找指定元素,因此关联数组通常称为散列。

比如想设置一个数组,名为age,根据人名可以查找对应的年龄
LiLei 28
HanMeimei 27
Lily 26
Lucy 26

声明

qingsong@db2a:/tmp$ declare -A age

赋值

有两种办法
声明之后,可以用两种方法将元素添加到关联数组中。
--利用内嵌“索引-值”列表的方法,提供一个“索引-值”列表:
$ ass_array=([index1]=val1 [index2]=val2)
--使用独立的“索引-值”进行赋值:
$ ass_array[index1]=val1
$ ass_array'index2]=val2

示例:

qingsong@db2a:/tmp$ age=([Lilei]=28 [HanMeimei]=27)
qingsong@db2a:/tmp$ age[Lily]=26
qingsong@db2a:/tmp$ age[Lucy]=26

根据索引名,查找值

qingsong@db2a:/tmp$ echo "Age of HanMeimei is ${age[HanMeimei]}"
Age of HanMeimei is 27
qingsong@db2a:/tmp$ echo "Age of Lily is ${age[Lily]}"
Age of Lily is 26

获取索引列表

以用下面的方法获取数组的索引列表:
$ echo ${!array_var[*]}
也可以使用:
$ echo ${!array_var[@]

示例:

qingsong@db2a:/tmp$ echo ${!age[@]}
Lilei HanMeimei Lucy Lily
qingsong@db2a:/tmp$ echo ${!age[*]}
Lilei HanMeimei Lucy Lily
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值