Shell編程二:Shell中的數組

1.數組的定義

完整的數組元素由數組名和索引組成如下:
array[index]
在Bash中定義數組有兩種方法:
(1)直接在定義的時候爲所有的數組元素賦值
array=(1 2 3 4 5 6)
(2)對數組的每個 元素進行分別賦值
array[0]=4; array[3]=3;array[1]=2;
使用這種方法對數組進行賦值的時候,可以不按照數組下標的先後順序進行操作,也不必對數組中每個元素進行賦值,系統會自動賦空值。

2.數組的使用

(1)引用數組的某個元素,可以使用數組名稱加索引的方式
#輸出數組中第三個元素
echo ${array[2]}
(2)如果不指定數組索引,將會顯式數組中第一個元素的值:
#不使用下表時默認引用數組中第一個元素的值
echo $array
(3)輸出數組中所有元素的值
#*表示所有元素的下標
echo ${array[*]}
(4)查看數組中指定範圍的元素
#查看數組中下標大於等於2的所有元素
echo ${array[@]:2}
(5)獲取數組的長度
echo ${#array[@]}
下面是一個冒泡排序的例子:
#!/bin/bash
# 2016/12/30
#whf

Array=(123 234 342 23 34 43 12 3)

length=${#Array[@]}
i=0;
echo "數組的長度是:" $length

while [ "$i" -lt "$length" ]
 do
   j=`expr $i + 1`
   while [ "$j" -lt "$length" ]
     do
     if [ "${Array[i]}" -gt "${Array[j]}" ]
     then
       temp=${Array[j]}
       Array[j]=${Array[i]}
       Array[i]=$temp
     fi
     j=`expr $j + 1`
   done
  i=`expr $i + 1`
done
echo ${Array[@]}

unset Array i j temp length










發佈了29 篇原創文章 · 獲贊 7 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章