1.数组的声明 1) array[key]=value # array[0]=one,array[1]=two 逐个赋值 a[1]=1 a[2]=2 循环赋值 for ((i=0;i<4;i++)) do array[i]=$i done echo ${array[0]} ${array[1]} ${array[2]} ${array[3]} 0 1 2 3 2) declare -a array # array被当作数组名 3) array=( value1 value2 value3 ... ) #文件 $cat file 0f 31 00 07 00 00 00 array=(`awk '{print $0}' file`) echo ${array[2]} 00 array=(`cat file`) echo ${array[0]} 0f #变量 id=0f 31 00 12 00 05 01 06 03 array=($(awk 'BEGIN{print "'"$list"'"}')) array=(`echo $id`) 4) array=( [1]=one [2]=two [3]=three ... ) 5) array="one two three" # echo ${array[0|@|*]},把array变量当作数组来处理,但数组元素 #只有字符串本身 echo ${array[0]} one two three 只有一个元素的数组 2.数组的访问 ${array[key]} # ${array[1]} 3.数组的删除 1) unset array[1] # 删除数组中第一个元素 2) unset array # 删除整个数组 4.数组的长度 1) ${#array[*]} 2) ${#array[@]} 5.数组第一个元素的长度 echo ${#array[0]} echo ${#array} 6.提取子串 a=(2323 324 5235 25) echo ${a:1} #第一个元素的参数扩展 #从位置1开始 323 echo ${a[@]:0:2} #第0个元素后面的两个元素 2323 324 echo ${a[@]:1:2} #第1个元素后面的两个元素 324 5235 echo ${a[@]:1} #第1个元素后面的所有元素 324 5235 25
shell数组
最新推荐文章于 2025-04-17 13:11:09 发布