索引赋值
索引赋值是最基本的赋值方法,语法为:
array[n]=valuen
示例:
#!/bin/bash
declare -a array
array[3]=jack
array[6]=rose
echo "第四个元素的值为 ${array[3]}"
echo "第七个元素的值为 ${array[6]}"
输出为
集合赋值
通过集合赋值和通过集合定义语法完全相同
语法为:
array=(value1 value2 value3 .... valuenn)
举个例子:
#!/bin/bash
declare -a array
array=(c c++ c# java pytnoh go shell perl )
echo "第一个元素是 ${array[0]}"
echo "第三个元素是 ${array[7]}"
输出结果为:
追加元素
在shell中,先已有的数组末尾追加元素通过索引为元素赋值。若存在,会替换元素值;若不存在,则会添加一个新的元素
例如:
#!/bin/bash
declare -a array
array=(Jack Rose Tom)
echo "${array[*]}"
array[2]=Tim
echo "${array[2]}"
array[3]=Tom
echo "${array[3]}"
输出结果为:
循环赋值
最常用的数组赋值就是循环
例如for循环:
#!/bin/bash
for i in {1..10}
do
array[$i]=$i
done
echo "${array[*]}"
输出结果为:
until循环
#!/bin/bash
declare -a array
i=0
until [ "$i" -gt 9 ]
do
let "i++"
array[$i]=$i
done
echo "${array[*]}"
输出结果为: