shell中的數組操作

來源:互聯網
上載者:User
1.數組定義,shell使用一對括弧表示數組,數組元素間用”空格”分隔
# 空數組arr1arr1=()# 數組arr2,成員分別是1, 2, 3, 4, 5, 6arr2=(1 2 3 4 5 6)
2.數組元素讀取,格式:${數組名[下標]},下標從0開始,下標為*或@代表整個數組內容
[root@10 ~]# echo ${arr2[0]}1[root@10 ~]# echo ${arr2[*]}1 2 3 4 5 6
3.遍曆數組, foreach
for num in ${arr2[*]}; do    echo $num;done;
4.數組長度,格式:${#數組名[*或@]}
[root@10 ~]# echo ${#arr2[*]}6
5.賦值,格式:數組名[下標]=值,如果下標不存在,則新增數組元素; 下標已有,則覆蓋值
[root@10 ~]# arr2[6]=7[root@10 ~]# echo ${arr2[*]}                    1 2 3 4 5 6 7[root@10 ~]# arr2[0]=-1[root@10 ~]# echo ${arr2[*]}-1 2 3 4 5 6 7
6.分區,格式:${數組名[*或@]:起始位:長度},截取部分數組,返回字串,中間用空格分隔;將結果使用“()”,則得到新的切片數組
[root@10 ~]# echo ${arr2[*]:0:3}-1 2 3[root@10 ~]# arr3=(${arr2[*]:0:3})[root@10 ~]# echo ${arr3[*]}-1 2 3
7.替換元素,格式:${數組名[*或@]/尋找字元/替換字元}, 不會修改原數組;如需修改的數組,將結果使用“()”賦給新數組
[root@10 ~]# echo ${arr2[*]}     -1 2 3 4 5 6 7[root@10 ~]# echo ${arr2[*]/7/10}-1 2 3 4 5 6 10[root@10 ~]# arr4=(${arr2[*]/7/10})[root@10 ~]# echo ${arr4[*]}-1 2 3 4 5 6 10
8.刪除數組,格式:unset 數組,清除整個數組; unset 數組[下標],清除單個元素
[root@10 ~]# echo ${arr2[*]}-1 2 3 4 5 6 7[root@10 ~]# unset arr2[0][root@10 ~]# echo ${arr2[*]}2 3 4 5 6 7[root@10 ~]# unset arr2[root@10 ~]# echo ${arr2[*]}[root@10 ~]# 
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.