• Shell数组


    何为数组?数组的特性就是一组数据类型相同的集合(不包括有一些编程语言提出来的关联数组的概念)。那么shell中数组是怎么定义的呢,我们来看两种数据类型:

    一是数值类型,二是字符串类型;虽然shell本身是弱类型的,但也可以这么区分。

    定义数组:

    数组中可以存放多个值。Bash Shell只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与PHP类似)。

    与大部分编程语言类似,数组元素的下标由0开始

    在Shell中,用括号来表示数组,数组元素用“空格”符号分割开。定义数组的一般形式为:

    数组名=(值1 值2 ... 值n)

    例如:

    array_name=(value0 value1 value2 value3)

    或者

    array_name=(

    value0

    value1

    value2

    value3

    )

    还可以单独定义数组的各个分量:

    array_name[0]=value0

    array_name[1]=value1

    array_name[n]=valuen

    使用数组

    1.读取数组

    读取数组元素值的一般格式是:

    ${数组名[下标]}

    例如:

    valuen=${array_name[n]}

    使用@符号可以获取数组中的所有元素,例如:

    echo ${array_name[@]}

    读取数组元素值的一般格式是:

    ${array_name[index]}

    # vi cc.sh

    #!/bin/bash
    my_array=(A B "C" D)
    echo "第一个元素为:${my_array[0]}"
    echo "第二个元素为:${my_array[1]}"
    echo "第三个元素为:${my_array[2]}"
    echo "第四个元素为:${my_array[3]}"
    ~

    # chmod +x cc.sh

    # ./cc.sh 

    获取数组中的所有元素

    使用@或*可以获取数组中的所有元素,例如:

    #vi aa.sh

    #!/bin/bash
    my_array[0]=A
    my_array[1]=B
    my_array[2]=C
    my_array[3]=D
    echo "数组的元素为:${my_array[*]}"
    echo "数组的元素为:${my_array[@]}"

    获取数组的长度

    获取数组长度的方法与获取字符串长度的方法相同

     #vi dd.sh

    #!/bin/bash
    my_array[0]=A
    my_array[1]=B
    my_array[2]=C
    my_array[3]=D
    echo "数组元素个数为:${#my_array[*]}"
    echo "数组元素个数为:${#my_array[@]}"

    # ./dd.sh 

    数组的使用

  • 相关阅读:
    关于json字符串与实体之间的严格验证
    SQL Pretty Printer 一款值得你拥有的MSSQL格式化插件
    ABP增加记录EFCore 生成数据库脚本日志到新的txt文件
    Multiple types were found that match the controller named 'Auth'.
    sqlserver 交叉去重
    sqlserver分组排序取前三条数据
    C# 读取.resx资源文件写入到json文件中
    SqlServer根据经纬度排序
    .net core 简单定时程序
    使用游标,查询一张的数据往另外三张表里面添加数据
  • 原文地址:https://www.cnblogs.com/djlsunshine/p/9879650.html
Copyright © 2020-2023  润新知