在外殼中使用數組

在外殼中使用數組

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中的特殊變量

下一課:基本的外殼操作員

可能有興趣

  • 基本的外殼操作員

    每個外殼都支持許多操作員。我們的教程基於默認外殼(Bourne),因此我們在本章中討論Bourne Shell Operator。

  • C外殼操作員

    該教程列出了C Shell中的所有運算符。在這裡,大多數運營商與我們在C編程語言中擁有的操作員相似。

  • korn殼操作員

    該教程列出了Korn Shell中可用的所有操作員。在這裡,這些操作員大多數與我們在C程序語言中所擁有的類似。