zoukankan      html  css  js  c++  java
  • Linux中Shell数组的笔记

    640?wx_fmt=png

    Shell数组的介绍

    数组算是一种特殊的数据结构,数据项可以成为数组的元素,可以通过数组的索引获取每一个数组的元素值。

    数组的典型的使用场景是把相同类型的元素汇总在一起。由于Shell变量属于弱类型,所以数组里面的元素并不一定是相同类型。

    注意:Shell中的数组只支持一维数组,但对元素的个数没有限制,数组元素的索引也是从0开始。

    数组的定义

    数组的定义格式:declare -a 数组名称

    比如:declare -a testarr #定义一个testarr数组

    testarr[0]=10 #第一个元素赋值

    testarr[1]="hello" #第二个元素赋值

    #数组定义的时候同时赋值

    declare -a testarr=(10,'hello') 等价于 testarr=(10,'hello')

    testarr[2]=20 #增加元素

    #不连续赋值

    testarr1=([1]=10 [3]=30 [5]=50)

    数组的操作

    1、数组的取值

    格式如下:${数组名[索引]}

    比如:echo ${testarr[0]}

    echo ${testarr[@]} #获取元素的所有值  输出以空格隔开的元素值

    echo ${testarr[*]} #获取元素的所有值,输出的是一整个字符串

    2、数组长度

    方法如下:

    echo ${#testarr[@]} #获取数组元素的个数

    echo ${#testarr[*]} #获取数组元素的个数

    echo ${#testarr[0]} #获取数组某一个元素的长度

    3、数组截取

    echo ${testarr[@]:1:2} 

    #获取数组的索引值是1、2的元素

    echo ${testarr[2]:0:2} 

    #获取数组索引值是2元素值截取从第0个字符开始连续2个字符

    4、连接数组

    testarr2={${testarr[@]} ${testarr1[@]}} #合并数组

    5、替换元素:将数组内某个元素值替换成其他值

    testarr=($testarr[@]/hello/helloworld)

    6、取消数组或元素

    unset $testarr #取消数组

    unset $testarr[0] #取消数组的一个元素



  • 相关阅读:
    LVS DR实验!
    Memcached 与 Redis 区别
    LVS笔试题!
    并发编程拓展知识
    并发编程之协程
    并发编程之线程
    并发编程之多道技术
    粘包问题与socketserver实现并发
    套接字通信
    git的使用
  • 原文地址:https://www.cnblogs.com/hgmyz/p/12351213.html
Copyright © 2011-2022 走看看