shell指令碼學習總結02 陣列

2022-03-05 14:09:10 字數 1592 閱讀 4134

bash同時支援普通陣列個關聯陣列,普通陣列只能使用整數作為陣列的索引,關聯陣列可以使用字串作為陣列的索引。

陣列的定義方法:

在單行中使用一列值定義乙個陣列

[root@new ~]# array1=(123

456)

使用索引-值定義

[root@new ~]# array2[0]="

test1

"[root@new ~]# array2[1]="

test2

"[root@new ~]# array2[2]="

test3

"

使用key-value鍵值對)4

列印陣列元素:

列印出陣列指定索引的陣列元素內容

[root@new ~]# echo $

test1

列印出陣列中的所有值

[root@new ~]# echo $

test1 test2 test3

或者:

[root@new ~]# echo $

test1 test2 test3

列印出陣列的長度

[root@new ~]# echo $

3

擷取陣列-

[root@new ~]# array=(012

34)[root@new ~]# echo $12

3

更多用法參照--變數字串的常用操作shell指令碼學習總結05--變數與環境變數

列出陣列索引

[root@new ~]# echo $

0 1 2

刪除陣列

刪除單個陣列

[root@new ~]# unset array2[0

][root@new ~]# echo $

test2 test3

刪除整個陣列

[root@new ~]# unset array2

[root@new ~]# echo $

[root@new ~]#

指令碼應用:

shell指令碼學習總結

看完了書 shell指令碼學習指南 順便總結一下 看了整本書,全部都是命令,但也確實很難記得命令的選項,所以學習方法就變了。學習嘛,要考慮到遺忘的可能,既然會忘,還不如不去記,能做的就是但用到的時候再去學,那麼現在學習的目的就是為了縮短以後用到時再去學習的學習時間,所以現在所應該學的,是將書本上的命...

Shell指令碼學習總結

最近一段時間研究語音識別 automatic speech recognition,asr 接觸到一款優秀的asr開源專案kaldi。學習過程中,發現kaldi大部分指令碼採用shell語音編寫,所以潛心學習了一段時間的shell程式設計。總體來說,該語言難度一般,關鍵要記住眾多的命令,採用思維導圖...

shell指令碼學習(十六) 陣列

shell陣列 是若干資料的集合,其中的每乙份資料都稱為元素,shell陣列元素的下標也是從0開始計數,獲取陣列中的元素要使用下標 下標可以是乙個整數,也可以是乙個結果為整數的表示式 下標必須大於等於0。shell中,用小括號 來表示陣列,陣列元素之間用空格來分隔。由此,定義陣列的一般形式為 arr...