Shell陣列 shell陣列的定義 陣列長度

2021-07-09 02:34:52 字數 1650 閱讀 5926

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=$

from: 

Shell陣列 shell陣列的定義 陣列長度

shell在程式設計方面比windows批處理強大很多,無論是在迴圈 運算。bash支援一維陣列 不支援多維陣列 並且沒有限定陣列的大小。類似與c語言,陣列元素的下標由0開始編號。獲取陣列中的元素要利用下標,下標可以是整數或算術表示式,其值應大於或等於0。在shell中,用括號來表示陣列,陣列元素用...

八 Shell陣列 shell陣列的定義 陣列長度

shell在程式設計方面比windows批處理強大很多,無論是在迴圈 運算。bash支援一維陣列 不支援多維陣列 並且沒有限定陣列的大小。類似於c語言,陣列元素的下標由0開始編號。獲取陣列中的元素要利用下標,下標可以是整數或算術表示式,其值應大於或等於0。1 定義陣列 在shell中,用括號來表示陣...

Shell陣列 shell陣列的定義 陣列長度

shell在程式設計方面比windows批處理強大很多,無論是在迴圈 運算。bash支援一維陣列 不支援多維陣列 並且沒有限定陣列的大小。類似與c語言,陣列元素的下標由0開始編號。獲取陣列中的元素要利用下標,下標可以是整數或算術表示式,其值應大於或等於0。定義陣列 在shell中,用括號來表示陣列,...