• 小试牛刀-1.7


    数组是shell脚本非常重要的组成部分,它借助索引将多个独立的数据存储为一个集合。

    普通数组只能使用整数作为数组索引。

    bash也支持关联数组,它可以使用字符串作为数组索引。

    1)定义数组的方法有多种:可以在单行中使用一列值来定义一个数组:

    如,array_var=(1 2 3 4 5 6);这些值将会存储在以0起始索引的连续位置上。

    还可以定义如下:

    array_var[0]="test1"

    array_var[1]="test2"

    array_var[2]="test3"

    array_var[3]="test4"

    2)打印出特定索引的数组元素内容

    echo ${array_var[0]}

    test1

    index=3

    echo ${array_var[$index]}

    test4

    3)以清单形式打印出数组中的所有值

    $echo ${array_var[*]}

    test1 test2 test3 test4

    4)打印数组长度

    echo ${#array_var[*]}

    补充内容

    关联数组是借助散列技术

    1)定义关联数组

    在关联数组中,可以使用任意的文本作为数组索引;使用声明语句将一个变量声明为关联数组:declare -A ass_array

    有两种方法将元素添加到关联数组中

    a、利用内嵌"索引-值"列表的方法,提供一个“索引-值”列表:

    ass_array=([index1]=val1 [index2]=val2)

    b、使用独立的“索引-值”进行赋值

    ass_array[index1]=val1

    ass_array[index2]=val2

    使用关联数组对水果制定价格

    declare -A fruits_value

    fruits_value=([apple]='100 dollars' [orange]='150 dollars')

    显示数组内容:

    echo "Apple costs ${fruits_value[apple]}"

    Apple consts 100 dollars

    2)列出数组索引列表

    echo ${!array_var[*]}

    也可以使用

    echo ${!array_var[@]}

    eg:echo ${!fruits_value[*]}

    orange apple

    对于普通数组也可以用这种方式。

  • 相关阅读:
    常用正则、正则表达式
    移动端虚拟手机键盘
    如何隐藏滚动条还能实现滚动的功能
    醉盏的第一篇博客-关于title的换行处理
    Mybatis-Generator自动生成Dao、Model、Mapping等相关映射文件(懒人版)
    java学习笔记----@Override的作用
    web项目生成web.xml的两种方式
    angular分页插件tm.pagination二次触发问题解决歪方案
    Ubuntu Server17.10配置静态IP
    cors 的深入细节
  • 原文地址:https://www.cnblogs.com/gary-guo/p/6094486.html
Copyright © 2020-2023  润新知