shell陣列操作簡明總結

2022-10-06 20:21:19 字數 1985 閱讀 6329

陣列作為一種特殊的資料結構在任何一種程式語言中都有它的一席之地,當然bash shell也不例外。本文就shell陣列來做乙個小的總結。

在這裡只討論一維陣列的情況,關於多維陣列(事實上,你得用一維陣列的方法來模擬),不涉及。這裡包括陣列的複製,計算,刪除,替換。

1.陣列的宣告:

複製** **如下:

1)array[key]=value # array[0]=one,array[1]=two

2)declare -a array # array被當作陣列名

3)array=( value1 value2 value3 ... )

4)array=( [1]qipbpyrth=one [2]=two [3]=three ... )

5)array="one two three" # echo $,把array變數當作陣列來處理,但陣列元素只有字串本身

2.陣列的訪問:

複製** **如下:

1)$ # $

3.陣列的刪除

複製** **如下:

1)unset array[1] # 刪除陣列中第乙個元素

2)unset array # 刪除整個陣列

4.計算陣列的長度:

複製** **如下:

1)$2)$ #同上。 $ 、$。注意同#的區別

5.陣列的提取

從尾部開始提取:

複製www.cppcns.com** **如下:

array=( [0]=one [1]=two [2]=three [3]=four )

$ # two three four,除掉第乙個元素後所有元素,那麼$表示所有元素

$ # one two

$ # two three

6.子串刪除

複製** **如下:

[root@localhost dev]# echo $

one two three four

[root@localhost dev]# echo $ # 左邊開始最短的匹配:"t*e",這將匹配到"thre"

one two e four

[root@localhost dev]# echo $ # 左邊開始最長的匹配,這將匹配到"three"

[root@localhost dev]# array=( [0]=one [1]=two [2]=th程式設計客棧ree [3]=four )

[root@localhost dev]# echo $ # 從字串的結尾開始最短的匹配

one tw three four

[root@localhost dev]# echo $ # 從字串的結尾開始最長的匹配

one tw three four

7.子串替換

複製** **如下:

[root@localhost dev]# array=( [0]=one [1]=two [2]=three [3]=four )[code]

第乙個匹配到的,會被刪除

[code][root@localhost dev]# echo $

mne twm three fmur

所有匹配到的,都會被刪除

複製** **如下:

[r程式設計客棧oot@localhost dev]# echo $

mne twm three fmur

沒有指定替換子串,則刪除匹配到的子符

複製** **如下:

[root@localhost dev]# echo $

ne tw three fur

替換字串前端子串

複製** **如下:

[root@localhost dev]# echo $

kne two three four

替換字串後端子串

複製** **如下:

[root@localhost dev]# echo $

one twk three four

本文標題: shell陣列操作簡明總結

本文位址:

Python字典操作簡明總結

1.dict 建立字典 複製 如下 fdict dict x 1 y 2 fdict 2.fromkeys 來建立乙個 預設 字典,字典中元素具有相同的值 複製 如下 ddict fromkeys x y 1 ddict 3.遍歷字典 使用keys 遍歷 複製 如下 dict2 for key in...

shell陣列總結

1.計算陣列長度 2.列出陣列索引 或者 3.列印陣列中所有值 或者 4.shell中遍歷陣列元素 for str in do echo str done 5.定義空陣列 uset array 普通陣列 1.初始化 第一種初始化 root jjy q data tmp data array orig...

Shell陣列總結

1 直接定義整個陣列 語法格式 array name value1 value2 valuen 例如 my array a b c d 2 使用下標來定義陣列 array name 0 value0 array name 1 value1 array name 2 value2 my array a...