zoukankan      html  css  js  c++  java
  • 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 

    数组的使用

  • 相关阅读:
    SpringSecurity 3.2入门(8)自定义权限控制数据库设计
    SpringSecurity 3.2入门(7)自定义权限控制介绍
    SpringSecurity 3.2入门(6)简单介绍默认使用的十一个过滤器
    Spring3.2下使用JavaMailSenderImpl类发送邮件
    Java Mail邮件发送的简单实现
    Spring下配置几种常用连接池
    23种设计模式入门之工厂模式
    C# BackgroundWorker的Bug???
    C# BeginInvoke和EndInvoke方法
    c# 高效的线程安全队列ConcurrentQueue
  • 原文地址:https://www.cnblogs.com/djlsunshine/p/9879650.html
Copyright © 2011-2022 走看看