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

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

Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式如下:

array_name=(value1 ... valuen)

实例

#!/bin/bash
my_array=(A B "C" D)

我们也可以使用下标来定义数组:

array_name[0]=value0
array_name[1]=value1
array_name[2]=value2

读取数组

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

${array_name[index]}

实例

#!/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 test.sh
$ ./test.sh
第一个元素为: A
第二个元素为: B
第三个元素为: C
第四个元素为: D

获取数组中的所有元素

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

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

执行脚本,输出结果如下所示:

$ chmod +x test.sh
$ ./test.sh
数组的元素为: A B C D
数组的元素为: A B C D

获取数组的长度

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

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

执行脚本,输出结果如下所示:

$ chmod +x test.sh
$ ./test.sh
数组元素个数为: 4
数组元素个数为: 4

转载于:https://blog.51cto.com/snowtiger/1941331

shell--4、Shell 数组相关推荐

  1. shell中的函数shell中的数组告警系统需求分析

    2019独角兽企业重金招聘Python工程师标准>>> 20.16/20.17 shell中的函数 函数的概念 函数就是把一段代码整理到了一个小单元中,并给这个小单元起一个名字,当用 ...

  2. Linux shell 中的数组和关联数组

    写在前面的话 我用开始废柴了,这个又是写给我自己看的了. 普通数组 1.数组的定义 在Linux shell中定义一个普通的数组很简单,首先我们先给数组命名(当然要符合所有的命名规则咯).定义数组的一 ...

  3. linux shell 创建序列数组(list,array)方法

    from: http://www.cnblogs.com/chengmo/archive/2010/10/14/1851517.html 关于linux数组定义,以及生成方法,请看:linux she ...

  4. linux shell 字符串 数组,bash shell函数返回数组字符串

    #!/bin/bash # script:getselfvar.sh # 每个脚本中都在末尾追加了一段特殊的域名ip序列,需要将这段序列存放到数组变量中,供 # 脚本使用,例子中的ip和域名是处理过的 ...

  5. Linux centosVMware shell中的函数、shell中的数组、

    一.shell中的函数 函数就是把一段代码整理到了一个小单元中,并给这个小单元起一个名字,当用到这段代码时直接调用这个小单元的名字即可. 格式: function _name() { command ...

  6. shell 中定义数组

    shell  中定义数组 在shell中定义数组有两种方法: 1.   a=(a  b  cde)这样就定义了一个长度为  3  的数组 2.   a=  ([2]=a   [1]=b  [0]=c) ...

  7. shell中的函数、shell中的数组、 告警系统需求分析

    为什么80%的码农都做不了架构师?>>>    20.16/20.17 shell中的函数 shell中的函数 说明:函数就是子shell, 是一个代码段,定义完函数就可以引用它. ...

  8. 掌握shell编程中数组的常见用法及示例

    From: http://www.embeddedlinux.org.cn/html/jishuzixun/201211/19-2386.html 给大家分享下数组的用法小例子,希望能给大家一点帮助. ...

  9. Shell脚本(函数,shell中的数组)

    函数 函数就是把一段代码整理到一个小单元中,并给这个小单元起一个名字,当用到这段代码时直接调用这个小单元的名字即可. 格式:function f_name(){ command } 函数必须放在最前面 ...

  10. shell脚本中数组的使用_Shell脚本中的数组

    shell脚本中数组的使用 Knowing how to work with arrays in shell scripts will help you work with larger datase ...

最新文章

  1. 基于51单片机的高频频率计的设计
  2. 飞桨抠图直播2020.4.1
  3. MongoDB的数据逻辑结构
  4. 【渝粤教育】广东开放大学 社会工作行政 形成性考核 (52)
  5. C语言枚举类型(enum)的各种用法
  6. C#开源项目一览表[转](包含国内和国外)
  7. 旋转链表 Java,leetcode 旋转链表 Java
  8. awk学习笔记(16) - 字符串函数
  9. 椭圆形中间一个大写的v_Shift键在 Word 中的 9 个经典操作,第一个你可能就不知道!【Word教程】...
  10. 教学设计的理念与方法【2】
  11. Ruby完全自学手册
  12. 薛兆丰经济学讲义 简述
  13. web登录框,div半透明
  14. 优秀课件笔记之WINDOWS XP 操作系统
  15. 教你提取图片中文字的四种方法
  16. 编写两个过滤器,一个过滤器在 web 服务时,起用 UTF-8 编码,以处理 web 服务时的乱码问题。 另一个过滤器用来判断用户是否登录,只有登录用户方可访问/view 子目录。
  17. 新浪sina.cn邮箱注册python版
  18. EDM电子邮件营销策划常用创意
  19. 多媒体计算机系统有何特征,多媒体的特点主要包括哪些?
  20. java: JDK isn‘t specified for module ‘maven-junit41‘解决办法

热门文章

  1. Linux中,Tomcat安装
  2. cmd 出现The system cannot write to the specified device问题时如何解决
  3. Springboot打jar包项目无法访问jsp问题解决
  4. Android 屏幕适配:最全面的解决方案
  5. Chrome浏览器showModalDialog兼容性及解决方案
  6. ImportError: cannot import name ‘XXX‘ 问题解决方案
  7. JavaScript将焦点设置为HTML表单元素
  8. 如何在Android Studio中删除模块
  9. office 高效办公智慧树_精品网课office,让工作学习更轻松
  10. springBoot跨域注解@CrossOrigin