在外殼中使用數組
在外殼中使用數組
Shell變量能夠保存單個值。這種類型的變量稱為標量變量。
殼支持稱為數組變量的不同類型的變量,該變量可以同時容納多個值。陣列提供了一種分組一組變量的方法。您可以使用數組變量來存儲所有其他變量,而不是為每個必需變量創建新名稱。
所有名稱規則均在章節命名期間將應用的shell變量中討論。
定義unix / linux中的數組值
數組變量和標量變量之間的差異可以解釋如下:
當您試圖將不同學生的名字表示為一組變量時。每個變量是標量變量,如下:
NAME01 = "Zara" NAME02 = "Qadir" NAME03 = "Mahnaz" NAME04 = "Ayan" NAME05 = "Daisy"
我們使用一個數組來保留上述所有名稱。以下是創建數組變量以將值分配給其中一個的簡單方法。如下所述:
array_name [ index ] = value
此處array_name是數組的名稱,索引是要設置的數組中項目的索引,值是您要為該項目設置的值。
這是一個示例,以下命令:
NAME [ 0 ] = "Zara" NAME [ 1 ] = "Qadir" NAME [ 2 ] = "Mahnaz" NAME [ 3 ] = "Ayan" NAME [ 4 ] = "Daisy"
如果您正在使用ksh殼,然後數組的語法為:
set - A array_name value1 value2 . valuen
如果您正在使用bash殼,這裡的數組語法是:
array_name = ( value1 . valuen )
訪問UNIX / Linux中的數組值
設置了任何數組值後,您可以按以下方式訪問它:
此處是array_name是數組名稱,索引是要訪問的值的索引。這是一個簡單的例子:
#! / 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
您可以以以下方式之一訪問數組中的所有項目:
$ { array_name [*]} $ { array_name [@]}
這裡array_name是您感興趣的數組的名稱。這是一個簡單的示例:
#! / bin / sh NAME [ 0 ] = "Zara" NAME [ 1 ] = "Qadir" NAME [ 2 ] = "Mahnaz" NAME [ 3 ] = "Ayan" NAME [ 4 ] = "Daisy" echo "First Method : $ {NAME [*]} "
它將產生以下結果:
$ ./ test . sh First Method : Zara Qadir Mahnaz Ayan Daisy Second Method : Zara Qadir Mahnaz Ayan Daisy
根據TutorialSpoint
上一篇文章:UNIX / Linux中的特殊變量
下一課:基本的外殼操作員