shell 3数组

shell数组

shell支持一维数组(不支持多维数组),并且没有限定数组的大小。

定义数组

shell中,用括号来表示数组,数组元素用空格分隔,下标从0开始

方式1

 数组名=(值1 值2...值n),如array_name=(value0 value1 value2)

方式2

   array_name=(value0
   value1
   value2
   )

方式3 单独定义数组的值

array_name[0]=value0
array_name[1]=value1
array_name[2]=value2

读取数组

获取数组某个元素的值${数组名[下标]} 
使用@可以获取数组中的所有元素${数组名[@]}

获取数组的长度

获取数组长度的方法和获取字符串长度的方法相同。
length=${#数组名[@]}
length=${#数组名[*]}
获取数组某元素的长度
length=${#数组名[下标]}
#shell
#!/bin/sh
list1=("east" "west" "north" "south")
list2=('one'
 'two' 
 'three' 
 'four'
)
list3[0]="陆风"
list3[1]="江铃"
list3[3]="长安"
echo "list1: "${list1[@]} ${#list1[@]}
echo "list2: "${list2[@]} ${#list2[@]}
echo "list3: "${list3[@]} ${#list3[@]}
echo "list3[0]: "${list3[0]} ${#list3[0]}
echo "list3[2]: "${list3[2]} ${#list3[2]}

list1: east west north south 4
list2: one two three four 4
list3: 陆风 江铃 长安 3
list3[0]: 陆风 2
list3[2]: 0

猜你喜欢

转载自www.cnblogs.com/csj2018/p/9541595.html
今日推荐