Shell基礎 4 Shell陣列

2021-10-09 13:48:34 字數 1859 閱讀 6019

陣列中可以存放多個值。bash shell 只支援一維陣列(不支援多維陣列),初始化時不需要定義陣列大小(與 php 類似)。

與大部分程式語言類似,陣列元素的下標由0開始。

shell 陣列用括號來表示,元素用"空格"符號分割開,語法格式如下:

array_name=

(value1 value2 ... valuen)

例項

#!/bin/bash

# author:菜鳥教程

# url:www.runoob.com

my_array=

(a b "c" d)

我們也可以使用下標來定義陣列:

array_name[0]

=value0

array_name[1]

=value1

array_name[2]

=value2

讀取陣列

讀取陣列元素值的一般格式是:

$
例項

#!/bin/bash

# author:菜鳥教程

# url:www.runoob.com

my_array=

(a b "c" d)

echo

"第乙個元素為: $"

echo

"第二個元素為: $"

echo

"第三個元素為: $"

echo

"第四個元素為: $"

執行指令碼,輸出結果如下所示:

$ chmod +x test.sh 

$ ./test.sh

第乙個元素為: a

第二個元素為: b

第三個元素為: c

第四個元素為: d

獲取陣列中的所有元素

使用@ 或 * 可以獲取陣列中的所有元素,例如:

#!/bin/bash

# author:菜鳥教程

# url:www.runoob.com

my_array[0]

=amy_array[1]

=bmy_array[2]

=cmy_array[3]

=decho

"陣列的元素為: $"

echo

"陣列的元素為: $"

執行指令碼,輸出結果如下所示:

$ chmod +x test.sh 

$ ./test.sh

陣列的元素為: a b c d

陣列的元素為: a b c d

獲取陣列的長度

獲取陣列長度的方法與獲取字串長度的方法相同,例如:

#!/bin/bash

# author:菜鳥教程

# url:www.runoob.com

my_array[0]

=amy_array[1]

=bmy_array[2]

=cmy_array[3]

=decho

"陣列元素個數為: $"

echo

"陣列元素個數為: $"

執行指令碼,輸出結果如下所示:

$ chmod +x test.sh 

$ ./test.sh

陣列元素個數為: 4

陣列元素個數為: 4

Shell指令碼 4 Shell字串詳解

字串 string 就是一系列字元的組合。字串是 shell 程式設計中最常用的資料型別之一 除了數字和字串,也沒有其他型別了 字串和變數一樣也有三種方式 str1 hello str2 shell str3 scirpt 這個三種形式的區別 1 由單引號 包圍的字串 任何字元都會原樣輸出,在其中使...

其他4 shell指令碼後台執行知識

在實際工作中,一般會通過ssh連線伺服器,隱藏可能就會有指令碼或命令在執行期間不能中斷的需求,若中斷,則不僅前功盡棄,還可能破壞系統資料,下面是防止指令碼執行終端的3種方法 命令命令說明 a.sh 將a.sh放到後台執行,常用 ctrl c 停止當前前台指令碼或任務 ctrl z 暫停當前前台指令碼...

學習筆記4 Shell程式設計(流程控制)

1.單分支if條件語句 if 條件判斷式 then 程式 fi 或者if 條件判斷式 then 程式 fi 單分支條件語句需要注意幾個點 if語句使用fi結尾,和一般語言使用大括號結尾不同 條件判斷式 就是使用test命令判斷,所以中括號和條件判斷式之間必須有空格 then後面跟符合條件之後執行的程...