shell腳本字符串和數(shù)組的使用操作方法
字符串
可以使用單引號(hào)和雙引號(hào)定義字符串變量但是單引號(hào)中不支持變量解析
#! /bin/bash username="mayuan" str_1="hello ${username}" str_2='hello ${username}' echo $str_1 # hello mayuan echo $str_2 # hello ${username}
獲取字符串的長(zhǎng)度
#! /bin/bash username="mayuan" echo ${#username} # 6
截取字符串
#! /bin/bash username="mayuan" echo ${username:1:3} # 從第二個(gè)字符開始截取3個(gè)字符輸出"ayu"
查找指定字符
#! /bin/bash username="mayuan" echo $(expr index "${username}" y) #查找y在指定字符的位置
數(shù)組
#! /bin/bash arr=(1 2 3 4 5) echo ${arr[0]} #輸出1 echo ${arr[1]} #輸出2
獲取數(shù)組長(zhǎng)度
#! /bin/bash arr=(1 2 3 4 5) echo ${#arr[@]} #輸出5 echo ${#arr[*]}
PS:下面給大家介紹shell將字符串分隔成數(shù)組
#!/bin/bash a="hello,world,nice,to,meet,you" #要將$a分割開,先存儲(chǔ)舊的分隔符 OLD_IFS="$IFS" #設(shè)置分隔符 IFS="," #如下會(huì)自動(dòng)分隔 arr=($a) #恢復(fù)原來(lái)的分隔符 IFS="$OLD_IFS" #遍歷數(shù)組 for s in ${arr[@]} do echo "$s" done
變量$IFS存儲(chǔ)著分隔符,這里我們將其設(shè)為逗號(hào) "," OLD_IFS用于備份默認(rèn)的分隔符,使用完后將之恢復(fù)默認(rèn)。
arr=($a)用于將字符串$a按IFS分隔符分割到數(shù)組$arr
${arr[0]} ${arr[1]} ... 分別存儲(chǔ)分割后的數(shù)組第1 2 ... 項(xiàng)
${arr[@]}存儲(chǔ)整個(gè)數(shù)組。
${!arr[@]}存儲(chǔ)整個(gè)索引值:1 2 3 4 ...
${#arr[@]} 獲取數(shù)組的長(zhǎng)度。
總結(jié)
以上所述是小編給大家介紹的shell腳本字符串和數(shù)組的使用操作方法 ,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
Shell腳本實(shí)現(xiàn)的一個(gè)簡(jiǎn)易Web服務(wù)器例子分享
這篇文章主要介紹了Shell腳本實(shí)現(xiàn)的一個(gè)簡(jiǎn)易Web服務(wù)器例子分享,本文實(shí)現(xiàn)的Web服務(wù)器非常簡(jiǎn)單實(shí)用,可以在你不想安裝nginx、apache等大型WEB服務(wù)器時(shí)使用,需要的朋友可以參考下2014-12-12linux下實(shí)現(xiàn)ftp自動(dòng)備份shell腳本
ftp命令把遠(yuǎn)程計(jì)算機(jī)上的文件傳輸?shù)奖镜赜?jì)算機(jī)時(shí),需要和用戶交互。怎樣使交互過(guò)程自動(dòng)化呢2013-01-01Shell腳本之Expect免交互的實(shí)現(xiàn)
這篇文章主要介紹了Shell腳本之Expect免交互的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10Shell腳本實(shí)現(xiàn)硬盤空間和表空間的使用情況統(tǒng)計(jì)并郵件通知
這篇文章主要介紹了Shell腳本實(shí)現(xiàn)硬盤空間和表空間的使用情況統(tǒng)計(jì)并郵件通知,其中表空間是指oracle數(shù)據(jù)庫(kù)里的表空間,需要的朋友可以參考下2014-12-12