陣列定義法1:
arr=(1 2 3 4 5) # 注意是用空格分開,不是逗號!!
陣列定義法2:
array
array[0]="a"
array[1]="b"
array[2]="c"
獲取陣列的length(陣列中有幾個元素):
$遍歷(for迴圈法):
for var in $;
do echo $var
done
遍歷(帶陣列下標):
for i in "$";
do printf "%s\t%s\n" "$i" "$"
done
遍歷(while迴圈法):
i=0while [ $i -lt $ ]
do echo $
let i++
done
向函式傳遞陣列:
由於shell對陣列的支援並不號,所以這是乙個比較麻煩的問題。
翻看了很多stackoverflow的帖子,除了全域性變數外,無完美解法。
這裡提供乙個變通的思路,我們可以在呼叫函式前,將陣列轉化為字串。
在函式中,讀取字串,並且分為陣列,達到目的。
fun()
for((i=0;i<$_n_arr;i++));
do
elem=$
echo "$i : $elem"
done; }
array=(a b c)
fun "$(echo $)"
Shell程式設計中的陣列定義 遍歷
陣列定義 1 arr 1 2345 注意是用空格分開,不是逗號!陣列定義法2 12 3 4 array array 0 a array 1 b array 2 c 獲取陣列的length 陣列中有幾個元素 1 遍歷 for迴圈法 12 3 4 forvarin doecho var done 遍歷 ...
linux shell程式設計中的陣列定義 遍歷
如下 1 陣列定義法1 2 arr 123 45 注意是用空格分開,不是逗號!34 陣列定義法2 5array 6 array 0 a 7 array 1 b 8 array 2 c 910獲取陣列的length 陣列中有幾個元素 11 1213 遍歷 for迴圈法 14for var in 15 ...
Shell陣列 shell陣列的定義 陣列長度
shell在程式設計方面比windows批處理強大很多,無論是在迴圈 運算。bash支援一維陣列 不支援多維陣列 並且沒有限定陣列的大小。類似與c語言,陣列元素的下標由0開始編號。獲取陣列中的元素要利用下標,下標可以是整數或算術表示式,其值應大於或等於0。在shell中,用括號來表示陣列,陣列元素用...