Linux Shell 數(shù)組建立及使用技巧
linux shell在編程方面比windows 批處理強(qiáng)大太多,無論是在循環(huán)、運(yùn)算。已經(jīng)數(shù)據(jù)類型方面都是不能比較的。 下面是個(gè)人在使用時(shí)候,對它在數(shù)組方面一些操作進(jìn)行的總結(jié)。
1.數(shù)組定義
[chengmo@centos5 ~]$ a=(1 2 3 4 5)
[chengmo@centos5 ~]$ echo $a
一對括號(hào)表示是數(shù)組,數(shù)組元素用“空格”符號(hào)分割開。
2.數(shù)組讀取與賦值
得到長度:
[chengmo@centos5 ~]$ echo ${
#a[@]}
用${#數(shù)組名[@或*]} 可以得到數(shù)組長度
讀?。?/p>
[chengmo@centos5 ~]$ echo ${a[2]}
3
[chengmo@centos5 ~]$ echo ${a[*]}
1 2 3 4 5
用${數(shù)組名[下標(biāo)]} 下標(biāo)是從0開始 下標(biāo)是:*或者@ 得到整個(gè)數(shù)組內(nèi)容
賦值:
[chengmo@centos5 ~]$ a[1]=100
[chengmo@centos5 ~]$ echo ${a[*]}
1 100 3 4 5
[chengmo@centos5 ~]$ a[5]=100
[chengmo@centos5 ~]$ echo ${a[*]}
1 100 3 4 5 100
直接通過 數(shù)組名[下標(biāo)] 就可以對其進(jìn)行引用賦值,如果下標(biāo)不存在,自動(dòng)添加新一個(gè)數(shù)組元素
刪除:
[chengmo@centos5 ~]$ a=(1 2 3 4 5)
[chengmo@centos5 ~]$ unset a
[chengmo@centos5 ~]$ echo ${a[*]}
[chengmo@centos5 ~]$ a=(1 2 3 4 5)
[chengmo@centos5 ~]$ unset a[1]
[chengmo@centos5 ~]$ echo ${a[*]}
1 3 4 5
[chengmo@centos5 ~]$ echo ${
#a[*]}
4
直接通過:unset 數(shù)組[下標(biāo)] 可以清除相應(yīng)的元素,不帶下標(biāo),清除整個(gè)數(shù)據(jù)。
3.特殊使用
分片:
[chengmo@centos5 ~]$ a=(1 2 3 4 5)
[chengmo@centos5 ~]$ echo ${a[@]:0:3}
1 2 3
[chengmo@centos5 ~]$ echo ${a[@]:1:4}
2 3 4 5
[chengmo@centos5 ~]$ c=(${a[@]:1:4})
[chengmo@centos5 ~]$ echo ${
#c[@]}
4
[chengmo@centos5 ~]$ echo ${c[*]}
2 3 4 5
直接通過 ${數(shù)組名[@或*]:起始位置:長度} 切片原先數(shù)組,返回是字符串,中間用“空格”分開,因此如果加上”()”,將得到切片數(shù)組,上面例子:c 就是一個(gè)新數(shù)據(jù)。
替換:
[chengmo@centos5 ~]$ a=(1 2 3 4 5)
[chengmo@centos5 ~]$ echo ${a[@]/3/100}
1 2 100 4 5
[chengmo@centos5 ~]$ echo ${a[@]}
1 2 3 4 5
[chengmo@centos5 ~]$ a=(${a[@]/3/100})
[chengmo@centos5 ~]$ echo ${a[@]}
1 2 100 4 5
調(diào)用方法是:${數(shù)組名[@或*]/查找字符/替換字符} 該操作不會(huì)改變原先數(shù)組內(nèi)容,如果需要修改,可以看上面例子,重新定義數(shù)據(jù)。
以上內(nèi)容是小編給大家介紹的linux shell 數(shù)組建立及使用技巧,希望對大家有所幫助。
- Linux shell腳本編程if語句的使用方法(條件判斷)
- Linux系統(tǒng)中bash shell編程的10個(gè)基礎(chǔ)問題講解
- linux shell 管道命令(pipe)使用及與shell重定向區(qū)別
- linux shell數(shù)據(jù)重定向(輸入重定向與輸出重定向)詳細(xì)分析
- linux shell實(shí)現(xiàn)隨機(jī)數(shù)幾種方法分享(date,random,uuid)
- linux shell命令快捷獲得系統(tǒng)幫助(一)[man-pages定義規(guī)范]
- linux shell 字符串操作(長度,查找,替換)詳解
- Linux shell編程中IO和條件及循環(huán)處理的細(xì)節(jié)問題討論
相關(guān)文章
一天一個(gè)shell命令 linux文件內(nèi)容操作系列-cat命令詳解
這篇文章主要介紹了一天一個(gè)shell命令 linux文件內(nèi)容操作系列-cat命令詳解,需要的朋友可以參考下2016-06-06linux?shell字符串截取的詳細(xì)總結(jié)(實(shí)用!)
在開發(fā)的時(shí)候經(jīng)常會(huì)自行寫一些小的腳本,其中就用到截取字符串的操作,這篇文章主要給大家介紹了關(guān)于linux?shell字符串截取的詳細(xì)方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07解析spark源碼yarn-cluster模式任務(wù)提交
這篇文章主要為大家解析了spark源碼中yarn-cluster模式任務(wù)提交方式,有需要的朋友可以借鑒參考下,希望可以有所幫助,祝大家多多進(jìn)步,早日升職加薪2021-09-09關(guān)于Linux反空閑設(shè)置的兩種方法總結(jié)
下面小編就為大家?guī)硪黄P(guān)于Linux反空閑設(shè)置的兩種方法總結(jié)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-03-03檢測網(wǎng)站down掉后自動(dòng)發(fā)信的shell腳本代碼
腳本用途:檢測指定文件中的網(wǎng)站url,當(dāng)一個(gè)網(wǎng)站down掉后,自動(dòng)給指定的郵箱發(fā)信2013-02-02linux環(huán)境下編寫shell腳本實(shí)現(xiàn)啟動(dòng)停止tomcat服務(wù)的方法
這篇文章主要介紹了linux環(huán)境下編寫shell腳本實(shí)現(xiàn)啟動(dòng)停止tomcat服務(wù)的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-06-06Linux用戶在第一次登錄時(shí)強(qiáng)制更改初始密碼
在多用戶Linux環(huán)境下,創(chuàng)建使用某個(gè)隨機(jī)默認(rèn)密碼的用戶帳戶是標(biāo)準(zhǔn)做法。之后在成功登錄后,新用戶可以將默認(rèn)密碼更改成自己的密碼。出于安全方面的原因,常常建議“迫使”用戶在第一次登錄后更改默認(rèn)密碼,以確保最初的一次性密碼不再使用,需要的朋友可以參考下2015-10-10