W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
一個 Shell 變量只能夠容納一個值。這種類型的變量稱為標(biāo)量變量。
Shell 數(shù)組變量可以同時容納多個值,它支持不同類型的變量。數(shù)組提供了一種變量集分組的方法。你可以使用一個數(shù)組變量存儲所有其他的變量,而不是為每個必需的變量都創(chuàng)建一個新的名字。
Shell 變量中討論的所有命名規(guī)則都將適用于命名數(shù)組。
一個數(shù)組變量和一個標(biāo)量變量之間的差異可以解釋如下。
假如你想描繪不同學(xué)生的名字,你需要命名一系列變量名作為一個變量集合。每一個單獨的變量是一個標(biāo)量變量,如下所示:
NAME01="Zara"
NAME02="Qadir"
NAME03="Mahnaz"
NAME04="Ayan"
NAME05="Daisy"
我們可以使用一個數(shù)組來存儲所有上面提到的名字。下面是創(chuàng)建一個數(shù)組變量的最簡單的方法,將值賦給數(shù)組的一個索引。表示如下:
array_name[index]=value
這里 array_name 是數(shù)組的名稱,index 是數(shù)組中需要賦值的索引項,value 是你想要為這個索引項設(shè)置的值。
例如,以下命令:
NAME[0]="Zara"
NAME[1]="Qadir"
NAME[2]="Mahnaz"
NAME[3]="Ayan"
NAME[4]="Daisy"
如果使用 ksh shell,數(shù)組初始化的語法如下所示:
set -A array_name value1 value2 ... valuen
如果使用 bash shell,數(shù)組初始化的語法如下所示:
array_name=(value1 ... valuen)
在為數(shù)組變量賦值之后,你可以訪問它。如下所示:
${array_name[index]}
這里 array_name 是數(shù)組的名稱,index 是將要訪問的值的索引。下面是一個最簡單的例子:
#!/bin/sh
NAME[0]="Zara"
NAME[1]="Qadir"
NAME[2]="Mahnaz"
NAME[3]="Ayan"
NAME[4]="Daisy"
echo "First Index: ${NAME[0]}"
echo "Second Index: ${NAME[1]}"
這將產(chǎn)生以下結(jié)果:
$./test.sh
First Index: Zara
Second Index: Qadir
你可以使用以下方法之一,來訪問數(shù)組中的所有項目:
${array_name[*]}
${array_name[@]}
這里 array_name 是你感興趣的數(shù)組的名稱。下面是一個最簡單的例子:
#!/bin/sh
NAME[0]="Zara"
NAME[1]="Qadir"
NAME[2]="Mahnaz"
NAME[3]="Ayan"
NAME[4]="Daisy"
echo "First Method: ${NAME[*]}"
echo "Second Method: ${NAME[@]}"
這將產(chǎn)生以下結(jié)果:
$./test.sh
First Method: Zara Qadir Mahnaz Ayan Daisy
Second Method: Zara Qadir Mahnaz Ayan Daisy
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: