一、一维数组

  bash支持一维数组(不支持多维数组),并且没有限定数组的大小。

  类似与C语言,数组元素的下标由0开始编号。

二、定义数组

在Shell中,用括号来表示数组,数组元素用"空格"符号分割开。

array_name=(value0 value1 value2 value3)

array_name=( value0

value1

value2

value3 )

array_name[0]=value0

array_name[1]=value1

array_name[n]=valuen

可以不使用连续的下标,而且下标的范围没有限制。

#!/bin/bash
a=( 1 2 3 4 )
b=(11 121314)
c[0]=21
c[2]=22
c[3]=23
c[4]=24
echo  ${a[@]}     #1 2 3 4
echo  ${b[@]}     #11 12 13 14
echo  ${c[@]}     #21 22 23 24

三、读数组

${数组名[下标]}

#!/bin/bash
a=( 1 2 3 4 )
echo  ${a[1]}     #2

使用@符号或者*可以获取数组中的所有元素

#!/bin/bash
a=( 1 2 3 4 )
echo  ${a[@]}     #1 2 3 4
echo  ${a[*]}     #1 2 3 4

四、数组的长度

${#a[@]}或${#a[*]}取数组的长度
${#a[n]}取的是a[n]转成string的长度
#!/bin/bash
a=( 111 2 3 4 5 )
echo  ${#a[@]}     #5
echo  ${#a[*]}     #5
echo  ${#a[0]}     #3
echo  ${#a[5]}     #0
echo  ${#a[n]}     #3

Shell入门(四)之数组相关推荐

  1. shell入门学习笔记-15-命令详解: 三剑客之一awk-分支语句、数组

    系列目录与参考文献传送门: shell入门学习笔记-序章 awk分支控制 if admindeMacBook-Pro:~ admin$ seq 5 |awk '{if($0%2) print $0}' ...

  2. shell linux教程,Shell入门基础知识

    Shell 简介 Shell作为命令语言,它交互式地解释和执行用户输入的命令:作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支. 常常作为批处理命令来 ...

  3. Linux Shell高级技巧(四)

    十九.将文件的输出格式化为指定的宽度: 在这个技巧中,不仅包含了如何获取和文件相关的详细信息,如行数,字符等,而且还可以让文件按照指定的宽度输出.这种应用在输出帮助信息.License相关信息时还是比 ...

  4. (转载)MFC入门(四)  作者 zhoujiamurong

    关键字 MFC 原作者姓名 zhoujiamurong 介绍 这一节,介绍工具条和状态栏 读者评分 71 评分次数 18 正文 MFC入门(四) 工具条和状态栏 原创  作者:zhoujiamuron ...

  5. 算法入门四:函数与函数体:

    文章目录 算法入门四:函数与函数体: 引言: 函数与函数体: 章节介绍: 1.洛谷 p5735 Java 距离函数 2.洛谷 p5737 Java 闰年展示 3.洛谷 p5739 Java 计算阶乘 ...

  6. shell 编程四剑客简介 find sed grep awk(微信公众号摘抄)

    一,Shell编程四剑客之Find 通过如上基础语法的学习,读者对Shell编程有了更近一步的理解,Shell编程不再是简单命令的堆积,而是演变成了各种特殊的语句.各种语法.编程工具.各种命令的集合. ...

  7. linux常见命令以及shell入门编程(笔记总结记录)

    linux常见命令以及shell入门编程(笔记总结记录) 文章目录 linux常见命令以及shell入门编程(笔记总结记录) 一.linux常见命令 1.不常用 2.常用 3.数据查找处理相关 1.g ...

  8. ES6 入门教程 9 数组的扩展 9.1 扩展运算符

    ES6 入门教程 ECMAScript 6 入门 作者:阮一峰 本文仅用于学习记录,不存在任何商业用途,如侵删 文章目录 ES6 入门教程 9 数组的扩展 9.1 扩展运算符 9.1.1 含义 9.1 ...

  9. Shell编程四剑客之AWK(基础篇)

    Shell 编程四剑客之 AWK 概述 其语法参数格式为,AWK 常用参数.变量.函数详解如下: (1) AWK 基本语法参数详解: (2) AWK 内置变量详解: (3) AWK 内置函数详解: ( ...

最新文章

  1. 【机器学习】太香啦!只需一行Python代码就可以自动完成模型训练!
  2. jeecg如何控制用户权限_如何为用户定制个性化控制台?
  3. 使用JScript设置SVN客户端hook
  4. 管理信息系统 第三部分
  5. 十三、制作 iVX音乐分享小程序
  6. gin c.Next()方法
  7. php 异步进度条,PHP学习:PHP+Ajax异步带进度条上传文件实例
  8. 02-Http请求与响应全解
  9. html倒计时样式,简单实现JS倒计时效果
  10. 生产排程系统_MES环境下如何执行智能生产排程
  11. carrot2 Workbench org.apache.http.client.HttpResponseException: Not Found 以及其他类找不到错误的解决办法
  12. dB、dBFS、dBV、dBu...都是啥啊..
  13. 【论文笔记】Imagenet-trained cnns are Biased towards Texture; Increasing Shape Bias Improves accuracy
  14. 电脑快捷方式图标变白解决方案
  15. 如何替换mac word中的换行符为空格
  16. git pull 详解
  17. android studio 制作app欢迎界面-两种方法(功能)(备忘)
  18. 梳理19年上半年图文记录笔记(php和laravel )
  19. 计算机图表制作教程,PPT怎么制作动态图表 PPT动态图表制作教程-电脑教程
  20. Linux移动光标指令hkjl,使用 HPC Pack 在 Linux VM 上執行 OpenFOAM - Azure Virtual Machines | Microsoft Docs...

热门文章

  1. gitlab 删除分支_初识gitlab工作流
  2. 分支程序与循环程序设计-汇编实验二
  3. Ubuntu 上不了网
  4. RBM/DBN训练中的explaining away概念
  5. P6271 [湖北省队互测2014]一个人的数论(莫比乌斯反演 + 伯努利数)
  6. 踩不出足迹(牛客练习赛88 )
  7. 一起开心集训队第一周训练赛2021/3/14
  8. Codeforces Round #695(Div. 2)
  9. 【CF 1195】Basketball Exercise/Submarine in the Rybinsk Sea (hard edition)/OpenStreetMap+二维单调队列滑动窗口模板
  10. YbtOJ-交换游戏【树链剖分,线段树合并】