[ ],下标可以是一个整数,也可以是一个结果为整数的表达式;当然,下标必须大于等于 0。( )来表示数组,数组元素之间用空格来分隔。由此,定义数组的一般形式为:
array_name=(ele1 ele2 ele3 ... elen)
注意,赋值号=两边不能有空格,必须紧挨着数组名和数组元素。nums=(29 100 13 8 91 44)
arr=(20 56 "http://c.biancheng.net/shell/")第三个元素就是一个“异类”,前面两个元素都是整数,而第三个元素是字符串。
nums[6]=88
ages=([3]=24 [5]=19 [10]=12)以上代码就只给第 3、5、10 个元素赋值,所以数组长度是 3。
${array_name[index]}
其中,array_name 是数组名,index 是下标。例如:
n=${nums[2]}
表示获取 nums 数组的第二个元素,然后赋值给变量 n。再如:
echo ${nums[3]}
表示输出 nums 数组的第 3 个元素。@或*可以获取数组中的所有元素,例如:
${nums[*]}
${nums[@]}
两者都可以得到 nums 数组的所有元素。
#!/bin/bash
nums=(29 100 13 8 91 44)
echo ${nums[@]} #输出所有数组元素
nums[10]=66 #给第10个元素赋值(此时会增加数组长度)
echo ${nums[*]} #输出所有数组元素
echo ${nums[4]} #输出第4个元素
运行结果:
版权说明:Copyright © 广州松河信息科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州松河信息科技有限公司 版权所有