shell在程式設計方面比windows批處理強大很多,無論是在迴圈、運算。
bash支援一維陣列(不支援多維陣列),並且沒有限定陣列的大小。類似與c語言,陣列元素的下標由0開始編號。獲取陣列中的元素要利用下標,下標可以是整數或算術表示式,其值應大於或等於0。
定義陣列
在shell中,用括號來表示陣列,陣列元素用「空格」符號分割開。定義陣列的一般形式為:
array_name=(value1 ... valuen)
例如:
array_name=(value0 value1 value2 value3)
或者
array_name=(
value0
value1
value2
value3
)
還可以單獨定義陣列的各個分量:
array_name[0]=value0
array_name[1]=value1
array_name[2]=value2
可以不使用連續的下標,而且下標的範圍沒有限制。
讀取陣列
讀取陣列元素值的一般格式是:
$例如:
valuen=$
舉個例子:
#!/bin/sh
name[0]="zara"
name[1]="qadir"
name[2]="mahnaz"
name[3]="ayan"
name[4]="daisy"
echo "first index: $"
echo "second index: $"
執行指令碼,輸出:
$./test.sh
first index: zara
second index: qadir
使用@ 或 * 可以獲取陣列中的所有元素,例如:
$
$
舉個例子:
#!/bin/sh
name[0]="zara"
name[1]="qadir"
name[2]="mahnaz"
name[3]="ayan"
name[4]="daisy"
echo "first method: $"
echo "second method: $"
執行指令碼,輸出:
$./test.sh
first method: zara qadir mahnaz ayan daisy
second method: zara qadir mahnaz ayan daisy
獲取陣列的長度
獲取陣列長度的方法與獲取字串長度的方法相同,例如:
複製純文字新視窗
# 取得陣列元素的個數
length=$
# 或者
length=$
# 取得陣列單個元素的長度
lengthn=$
Shell陣列 shell陣列的定義 陣列長度
shell在程式設計方面比windows批處理強大很多,無論是在迴圈 運算。bash支援一維陣列 不支援多維陣列 並且沒有限定陣列的大小。類似與c語言,陣列元素的下標由0開始編號。獲取陣列中的元素要利用下標,下標可以是整數或算術表示式,其值應大於或等於0。在shell中,用括號來表示陣列,陣列元素用...
Shell陣列 shell陣列的定義 陣列長度
shell在程式設計方面比windows批處理強大很多,無論是在迴圈 運算。bash支援一維陣列 不支援多維陣列 並且沒有限定陣列的大小。類似與c語言,陣列元素的下標由0開始編號。獲取陣列中的元素要利用下標,下標可以是整數或算術表示式,其值應大於或等於0。在shell中,用括號來表示陣列,陣列元素用...
八 Shell陣列 shell陣列的定義 陣列長度
shell在程式設計方面比windows批處理強大很多,無論是在迴圈 運算。bash支援一維陣列 不支援多維陣列 並且沒有限定陣列的大小。類似於c語言,陣列元素的下標由0開始編號。獲取陣列中的元素要利用下標,下標可以是整數或算術表示式,其值應大於或等於0。1 定義陣列 在shell中,用括號來表示陣...