shell陣列常用例項分享

2022-09-26 17:24:11 字數 1972 閱讀 9930

說明:shell中陣列的下標預設是從0開始的

1、將字串放在陣列中,獲取其長度

複製** **如下:

#!/bin/bash

str="a b --n d"

array=($str)

length=$

echo $length

for ((i=0; irgqetzgtaxngth; i++))

doecho $

done

執行結果:

[oracle@99bill-as9 array]$ sh length.sh4a

--nd

2)、列印字串:

複製** **如下:

#!/bin/bash

str="a b c"

for i in $str

doecho $i

done

或者:#!/bin/bash

str="a b c"

array=($str)

for ((i=0;ido

echo $

done

執行結果:ac

2、字串用其他字元分割時

複製** **如下:

#!/bin/bash

www.cppcns.comstr2="a#b#c"

a=($(echo $str2 | tr '#' ' ' | tr -s www.cppcns.com' '))

length=$

for ((i=0; ido

echo $

done

#echo $

執行結果:ac

3、陣列的其他操作

複製** **如下:

#!/bin/bash

str="a b --n dd"

array=($str)

length=$

#ouput the first array element直接輸出的是陣列的第乙個元素

echo $array

#use subscript way access array用下標的方式訪問陣列元素

echo $

#output the array輸出這個陣列

echo $

#output in the array subscr程式設計客棧ipt for 3 the length of the element輸出陣列中下標為3的元素的長度

echo $

#output in the array subscript 1 to 3 element輸出陣列中下標為1到3的元素

echo $

#output in the array subscript greater than 2 elements輸出陣列中下標大於2的元素

echo $

#output in the array subscript less than 2 elements輸出陣列中下標小於2的元素

echo $

執行結果:

aa b --n dd

2b --n dd

--n dd

a b4、遍歷訪問乙個字串(預設是以空格分開的,當字串是以其他分隔符分開時可以參考2)

複製** **如下:

#!/bin/bash

str="a --m"

for i in $str

doecho $i

done

執行結果:

a--m

5、如何使用echo輸出乙個字串str="-n". 由於-n是echo的乙個引數,所以一般的方法echo "$str"是無法輸出的.

解決方法可以有:

複製** **如下:

echo x$str | sed 's/^x//'

echo -ne "$"

echo -e "$str\n\c"

printf "%s\n" $str(這樣也可以)

本文標題: shell陣列常用例項分享

本文位址:

六 shell陣列實戰例項

普通陣列 只能使用整數作為陣列索引 列表 關聯陣列 可以使用字串作為陣列索引 字典 一 普通陣列 定義陣列分為兩種方法 方法二 一次賦多個值 二 關聯陣列 陣列分類 1.普通變數 name tianyun t i a n y u n 變數值 0 1 2 3 4 5 6 索引 2.普通陣列 books...

shell常用程式設計及例項

變數 aaa lv 不要空格 echo aaa lv echo txt lvtxt echo aaa.txt lv.txt 求值 a 1b 2 1 let let c a b echo c 32 d a b echo d 33 e a b echo e 3條件判斷 1 數值判斷 ne lt less...

shell簡單常用指令碼例項

bin bash python gen service list.py dev null 2 1 if ne 0 then echo failed else echo succeed fi執行結果不輸出到頁面,執行結果成功返回succeed,失敗返回failed bin bash cd dirnam...