连续的变量

解决:变量过多的问题,在同一类变量中,不需要定义多个名字,而是以数组的方式来定义

定义数组:

declare -I 定义整数

declare -a 定义数组

declare -A 定义嵌套数组

array=(值)

array=()

如何给数组赋值:

array=()

1.array[0]=whr  (在计算机预言中,索引一般从0开始计算)

索引并不一定是数字:key-value array[whr]=1.78m

shel 中数组赋值,可以跳跃

2.array=(/var/log/*.log)

做遍历

array=(a b c d e)

3.array=('whr=178' 'wsl=175' …)

4.通过read命令来赋值

read -a a b c d e

如何去调用数组:

${数组名[索引]}

${数组名} 默认调用索引=0的值

${*}  ${@} 所有元素

调用数组的长度:

length("变量")

${#变量名【*】}或者${#变量名[@]}

添加数组值的特殊方式

${变量名[$(#变量名[@])]}="值"

数组切片:

${变量名[@]:偏移量:所需取出的个数}

删除值:

unset 变量名[索引]

shell脚本——数组的更多相关文章

  1. shell脚本-数组

    shell脚本-数组 数组 变量:存储单个元素的内存空间. 数组:存储多个元素的连续的内存空间,相当于多个变量的集合. 数组索引:编号从0开始,属于数值索引.索引可支持使用自定义的格式,而不仅是数值格 ...

  2. Shell 编程 数组

    本篇主要写一些shell脚本数组的使用. 数组定义 数组名=(value0 value1 vlaue2 ...) 数组名=([0]=value [1]=value [2]=vlaue ...) 列表名 ...

  3. 如何在linux Shell脚本里面把一个数组传递到awk内部进行处理

    前段时间和几位同事讨论过一个问题:Shell脚本里面怎样把一个数组传递到awk内部进行处理? 当时没有找到方法.前两天在QQ群里讨论awk的时候,无意间又聊起这个话题.机缘巧合之下找到一个思路,特此分 ...

  4. 如何在shell脚本中导出数组供子进程使用

    功能说明:设置或显示环境变量. 语 法:export [-fnp][变量名称]=[变量设置值] 补充说明:在shell中执行程序时,shell会提供一组环境变量.export可新增,修改或删除环境变量 ...

  5. 数组-在Shell脚本中的基本使用介绍

    Shell脚本在运维工作中是极其重要的,而数组在shell脚本里的运用无论是在循环或运算方面都是非常实用的一个环节.下面是对shell脚本中数组方面一些操作在此进行记录,希望能帮助到有兴趣的朋友~1. ...

  6. shell脚本--变量与数组

    Linux中的变量有环境变量和用户自定义变量,关于环境变量,可以查看这篇博客:linux环境变量 本文主要针对的是用户在shell脚本中定义的变量,但是环境变量也可以在shell脚本中使用. 普通变量 ...

  7. centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件、目录属性 shell数组简单用法 $( ) 和${ } 和$(( )) 与 sh -n sh -x sh -v 第三十五节课

    centos   shell脚本编程1 正则  shell脚本结构  read命令  date命令的用法  shell中的逻辑判断  if 判断文件.目录属性  shell数组简单用法 $( ) 和$ ...

  8. shell脚本函数与数组

    前言 之前写过一篇关于shell脚本流程控制总结,这次继续写关于shell脚本的问题.本篇文章主要包含shell脚本中的函数以及数组的用法介绍.同时也涵盖了一些字符串处理以及shell脚本比较使用的小 ...

  9. Shell脚本之二 变量、字符串和数组

    一.Shell 变量 1.1 定义变量 定义变量时,变量名不加美元符号($),如: your_name="runoob.com" 注意,变量名和等号之间不能有空格,这可能和你熟悉的 ...

随机推荐

  1. windows下gitee WEBHOOK的坑...

    折腾到凌晨五点,依然没有实现 windows下 分支  push之后服务器自动部署 主要是因为GIT的helper的配置上的问题.最后果断放弃了,最后祭出大招,用 WINDONS命令行自动循环..60 ...

  2. Reset Password 重置密码 (CentOS 5,6,7 ; Juniper Networks: SRX100 )

    一些重置root 密码的文档分享(来自官网): CentOS 5,6,7 Juniper Networks :  SRX100 链接:https://share.weiyun.com/5BM4kwK ...

  3. Spark中foreachRDD的正确使用

    常出现的使用误区: 误区一:在driver上创建连接对象(比如网络连接或数据库连接)    如果在driver上创建连接对象,然后在RDD的算子函数内使用连接对象,那么就意味着需要将连接对象序列化后从 ...

  4. 日常小节----unity小坑记(射线检测固定层级)

    unity中射线检测需设定所需层级时,必须加上距离!!! //一条从主相机到屏幕点击点的射线 Ray ray = Camera.Main.ScreenPointToRay(Input.mousePos ...

  5. Linux上安装Julia-1.1

    Julia 在Linux上的安装 浙江大学Julia镜像: 浙江大学Julia镜像 下载1.1版本: wget https://mirrors.zju.edu.cn/julia/releases/v1 ...

  6. 【计算机视觉】Opencv中的Face Detection using Haar Cascades

    [计算机视觉]Opencv中的Face Detection using Haar Cascades 标签(空格分隔): [图像处理] 声明:引用请注明出处http://blog.csdn.net/lg ...

  7. Mysql性能优化之---(二)

    建立适当的索引 说起提高数据库性能,索引是最物美价廉的东西了.不用加内存,不用改程序,不用调sql,只要执行个正确的'create index',查询速度就可能提高百倍千倍,这可真有诱惑力.可是天下没 ...

  8. 2018南京icpc-J-Prime Game (欧拉筛+唯一分解定理)

    题意:给定n个数ai(n<=1e6,ai<=1e6),定义,并且fac(l,r)为mul(l,r)的不同质因数的个数,求 思路:可以先用欧拉筛求出1e6以内的所有质数,然后对所有ai判断, ...

  9. SQLite进阶-15.触发器

    目录 触发器(Trigger) 触发器(Trigger)的要点: 触发器应用 查看触发器 删除触发器 触发器(Trigger) 触发器(Trigger)是数据库的回调函数,它会在指定的数据库事件发生时 ...

  10. 【深入浅出-JVM】(9): 方法区

    概念 方法区是虚拟机规范定义的,是所有线程共享的内存区域,保存系统的类的信息.比如:类的字段.方法.常量池.构造函数的字节码内容.代码.JIT 代码 永久代.metaspace 是对方法区的实现. H ...