天天看點

shell中建立數組和周遊

linux 中定義一個資料的文法為:

variable=(arg1 arg2 arg3 ....)

中間用空格分開。數組的下标從0開始。

1  擷取下标為n的元素:

variable[n]

而且不存在數組下标溢出的情況,如果 n>= 數組的長度,那麼為空,不會報錯。

2  擷取數組長度

${#variable[@]}

或者

${#variable[*]}

那麼如何用for周遊呢?一共有兩種方式:

第一種方式:直接周遊元素,不需要按照下标周遊,多用這種方式

count=0        # 注意指派的兩端一定不能有空格,shell中的空格用法很嚴格

for element in ${variable[@]}

do

    echo ${element}

    let count++

done

第二種方式:按照下标周遊

感覺并不常用

for i in $(seq 0 ${#variable[@]})

do

 e=${variable[$i]}

 # do something....

done

以上兩種方法 把 @ 換成 * 也行。

do如果和for寫在一行,for後面要加分号

for element in ${variable[@]};do

變量加1的其他幾種寫法

# 變量如果在左邊,就不需要$

let i=i+1;

x=$(( $x + 1 ))

x=`expr $x + 1`​

繼續閱讀