bash脚本之数组学习

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bash脚本之数组学习相关的知识,希望对你有一定的参考价值。

在bash中可使用索引数组和关联数组,bash在4.0版本之后才添加了对关联数组的支持

一、索引数组

1、定义索引数组

# 方式1
array_value=(1 2 3 4 5 6)
或者
array_value=(1, 2, 3, 4, 5, 6) # 方式2 array_value[0]=‘test1‘ array_value[2]=‘test2‘ ...... array_value[5]=‘test6‘

如同其他脚本语言一样,bash中的索引数组起始位置从0开始

2、打印数组某一项

echo ${array_value[0]}
或者
index=5
echo ${array_value[$index]}

打印结果如下:

技术分享

3、打印数组的所有值

echo ${array_value[*]}
或者
echo ${array_value[@]}

打印结果如下:

技术分享

4、打印数组长度

echo ${#array_value[*]}
或者
echo ${#array_value[@]}

注意区别打印数组长度与字符串长度的方式
如果使用 echo ${#array_value}得到的结果为1,则不是正确结果

打印结果如下:

技术分享

错误方式:

技术分享

二、关联数组

1、定义关联数组

# 定义关联数组 assoc_array
declare -A assoc_array

2、插入元素

assoc_array=([index1]=val1 [index2]=val2)
或者
assoc_array[index1]=val1
assoc_array[index2]=val2

例如:

技术分享

3、列出数组索引

echo ${!assoc_array[*]}
或者
echo ${!assoc_array[@]}

此方式同样适用于索引数组

结果如下:

技术分享

 

以上是关于bash脚本之数组学习的主要内容,如果未能解决你的问题,请参考以下文章

bash脚本编程之数组及随机变量

bash脚本编程之数组和字符串处理

Linux基础之bash脚本进阶篇-数组

Linux基础之bash脚本进阶篇-数组

Linux自学笔记——Bash脚本之数组以及内置字符串处理

Linux学习笔记--bash脚本编程之条件判断