陣列中可以存放多個值。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後面跟符合條件之後執行的程...