1. 程式人生 > >shell中數組的使用

shell中數組的使用

循環 str1 排列 升序 for循環 字符串數組 相同 str2 each

1 數組的定義

1.1 數字數組

  1. 常規定義
num=(1 2 3 4 5)
num[0]=1;num[1]=2
  1. 特殊形式
    在for循環中,也可以直接聲明並使用
for num in 1 2 3 4 5
do
 echo "num is: ${num}"
done

1.2 字符串數組

  1. 常規定義
str1=(‘a‘ ‘b‘ ‘c‘)/str1=(a b c)
str2[0]=a
str2[1]=‘b‘
str2[5]=d
str2[3]=c
  1. 特殊形式
str=" what class are you in ?"

此時數組的元素是以空格為間隔的

1.3 備註:

在使用形如“str[0]=1”定義數組是,數組的下標值可以不是連續的正整數,元素的順序按照下標的升序排列,數組的長度由實際包含的元素個數決定,不受下標值得影響。


2. 數組的遍歷

2.1 for循環

  1. 高級語言的形式
for((i=0;i<${#num[@]};i++))
do
 echo "num is: ${num[i]}"
done
  1. foreach形式
for nu in ${num[*]}
do
 echo "num is: $nu"
done

其中,${num[*]${num[@]效果相同

2.2 while

i=0
while [ $i -lt ${#num[@]} ]
do
 echo "num is: ${num[$i]}"
 echo "i is: $i"
 i=`expr $i + 1`
done 

2.3 until

i=0
until [ $i -ge ${#num[*]} ]
do
 echo "num is: ${num[$i]}"
 i=`expr $i + 1`
done

數組增加元素

數組更新元素值

數組刪除元素值

刪除數組

shell中數組的使用