shell脚本中数组的使用

        bash支持一维数组(不支持多维数组),并且没有限定数组的大小。和C语言类似,数组元素的下标从0开始。获取数组中的元素要利用下标,下标可以是整数或算术表达式,其值应大于或等于0。

      (1)数组的定义

        数组的定义有两种方法:

        (方法一)

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

array_name=(value1 value2 ... valuen)
        举例来说,定义一个数据,包含几个字符串:

array_name=(str_1 str_2 str_3 str_4)

或

array_name=(
str_1
str_2
str_3
str_4
)
      (方法二)
       也可以采用单独定义数组的各个分量的形式来定义数组,举例来说:

array_name[0]=str_1
array_name[1]=str_2
array_name[2]=str_3
array_name[3]=str_4

      (方法三)

        可以为数组中的元素指定下标,举例来说:

LOG_LEVEL_TEXT=(
    [1]="FATAL"
    [2]="WARNING"
    [4]="NOTICE"
    [8]="TRACE"
    [16]="DEBUG"
)

(2)数组元素的使用

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

${array_name[index]}

举例来说,
value=${array_name[2]}

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

${array_name[*]}
${array_name[@]}

遍历数组的方法:

#!/bin/bash

serve_name=(beijing shanghai tianjin chongqing)

for elem in ${serve_name[@]}
do
        echo $elem
done


(3)获取数组的长度

获取数组长度的方法与获取字符串长度的方法相同,例如:

# 取得数组元素的个数
length=${#array_name[@]}
# 或者
length=${#array_name[*]}
# 取得数组单个元素的长度
lengthn=${#array_name[n]}



学习资料来源于:

http://c.biancheng.net/cpp/view/7002.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值