Shell关联数组的应用


#赋值    定义关联数组需要声明  

[root@qls /service/scripts/day12]# #声明关联数组
[root@qls /service/scripts/day12]# declare -A g_array1


1. 单个进行赋值

[root@qls /service/scripts/day12]# g_array1[name]=qls
[root@qls /service/scripts/day12]# g_array1[age]=18
[root@qls /service/scripts/day12]# g_array1[skill]=linux

2. 赋值多个  

[root@qls /service/scripts/day12]# declare -A g_array2
[root@qls /service/scripts/day12]# g_array2=([name]=haoda [age]=30 [skill]=linux)

#调用关联数组 

#显示所有的关联数组 
[root@qls /service/scripts/day12]# declare  -A | tail -2
declare -A g_array1='([name]="qls" [age]="18" [skill]="linux" )'
declare -A g_array2='([name]="haoda" [age]="30" [skill]="linux" )'



#取消数组  
[root@qls /service/scripts/day12]# unset  g_array3


#获取数组中元数的个数   值的个数  索引的个数  

[root@qls /service/scripts/day12]# echo ${#g_array1[*]}
3
[root@qls /service/scripts/day12]# echo ${#g_array1[@]}
3

#获取某个索引值的长度 

[root@qls /service/scripts/day12]# echo ${#g_array1[name]}
3

#获取数组中的某一个值  元数 

[root@qls /service/scripts/day12]# echo ${g_array1[name]}
qls
[root@qls /service/scripts/day12]# echo ${g_array1[age]}
18
[root@qls /service/scripts/day12]# echo ${g_array1[skill]}
linux

#获取数组中所有的元数 值

[root@qls /service/scripts/day12]# echo ${g_array1[*]}
qls 18 linux
[root@qls /service/scripts/day12]# echo ${g_array1[@]}
qls 18 linux

#获取数组中所有的索引

[root@qls /service/scripts/day12]# echo ${!g_array1[@]}
name age skill
[root@qls /service/scripts/day12]# echo ${!g_array1[*]}
name age skill

#从某个索引(索引对应的位置从1开始)开始显示,显示剩下的所有   1 2 3 

[root@qls /service/scripts/day12]# echo ${g_array1[*]:1}
qls 18 linux
[root@qls /service/scripts/day12]# echo ${g_array1[*]:2}
18 linux
[root@qls /service/scripts/day12]# echo ${g_array1[*]:3}
linux

#从某个索引的位置开始,显示几个索引值
[root@qls /service/scripts/day12]# echo ${g_array1[*]:2:1}
18
[root@qls /service/scripts/day12]# echo ${g_array1[*]:2:2}
18 linux
[root@qls /service/scripts/day12]# echo ${g_array1[*]:1:2}
qls 18

#替换某个索引的值
[root@qls /service/scripts/day12]# echo ${g_array1[name]}
qls
[root@qls /service/scripts/day12]# g_array1[name]=qiudao
[root@qls /service/scripts/day12]# echo ${g_array1[name]}
qiudao

#删除某个索引的值
[root@qls /service/scripts/day12]# unset g_array1[name]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值