.数组定义

[chengmo@centos5 ~]$ a=(    )
[chengmo@centos5 ~]$ echo $a 一对括号表示是数组,数组元素用“空格”符号分割开。 .数组读取与赋值 得到长度: [chengmo@centos5 ~]$ echo ${#a[@]} 用${#数组名[@或*]} 可以得到数组长度 读取: [chengmo@centos5 ~]$ echo ${a[]} [chengmo@centos5 ~]$ echo ${a[*]} 用${数组名[下标]} 下标是从0开始 下标是:*或者@ 得到整个数组内容 赋值: [chengmo@centos5 ~]$ a[]= [chengmo@centos5 ~]$ echo ${a[*]} [chengmo@centos5 ~]$ a[]=
[chengmo@centos5 ~]$ echo ${a[*]} 直接通过 数组名[下标] 就可以对其进行引用赋值,如果下标不存在,自动添加新一个数组元素 删除: [chengmo@centos5 ~]$ a=( )
[chengmo@centos5 ~]$ unset a
[chengmo@centos5 ~]$ echo ${a[*]} [chengmo@centos5 ~]$ a=( )
[chengmo@centos5 ~]$ unset a[]
[chengmo@centos5 ~]$ echo ${a[*]} [chengmo@centos5 ~]$ echo ${#a[*]} 直接通过:unset 数组[下标] 可以清除相应的元素,不带下标,清除整个数据 .特殊使用 分片: [chengmo@centos5 ~]$ a=( )
[chengmo@centos5 ~]$ echo ${a[@]::} [chengmo@centos5 ~]$ echo ${a[@]::} [chengmo@centos5 ~]$ c=(${a[@]::})
[chengmo@centos5 ~]$ echo ${#c[@]} [chengmo@centos5 ~]$ echo ${c[*]} 直接通过 ${数组名[@或*]:起始位置:长度} 切片原先数组,返回是字符串,中间用“空格”分开,因此如果加上”()”,将得到切片数组,上面例子:c 就是一个新数据。 替换: [chengmo@centos5 ~]$ a=( )
[chengmo@centos5 ~]$ echo ${a[@]//} [chengmo@centos5 ~]$ echo ${a[@]} [chengmo@centos5 ~]$ a=(${a[@]//})
[chengmo@centos5 ~]$ echo ${a[@]} 调用方法是:${数组名[@或*]/查找字符/替换字符} 该操作不会改变原先数组内容,如果需要修改,可以看上面例子,重新定义数据。 、shell数组编程 数组是相同数据类型的元素安一定顺序排列的组合,就是把有限个类型相同的变量用一个名字引用,然后用编号区分它们变量的集合 创建和定义数组 TEST=(test1 test2 test3) 数组下标一般从0开始,引用数组方法如下 echo ${TEST[]} 引用第一个数组变量 echo ${TEST[]} 引用第二个数组变量 echo ${TEST[@]} 显示该数组所有参数 echo ${#TEST[@]} 显示该数组参数个数 echo ${#TEST[]} 显示test1字符长度 echo ${TEST[@]:} 打印数组所有值 echo ${TEST[@]:} 打印从第二值个开始的所有值 echo ${TEST[@]::} 打印第一个值和第二个值 echo ${TEST[@]::} 打印第二个值和第三个值 、数组替换操作 、数组删除 unset array[] 、遍历数组 cat > a.sh <<EOF
#!/bin/bash
export NODE_NAMES=(kube-test1 kube-test2 kube-test3 kube-test4)
for node_name in ${NODE_NAMES[*]}
do
echo ${node_name}
done
EOF 参考连接 https://www.cnblogs.com/chengmo/archive/2010/09/30/1839632.html

shell数组编程的更多相关文章

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

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

  2. SHELL脚本编程-普通数组(列表)和关联数组(字典)

    SHELL脚本编程-普通数组(列表)和关联数组(字典) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数组相关概述 变量: 存储单个元素的内存空间 数组: 存储多个元素的连续的 ...

  3. Shell脚本编程30分钟入门

    Shell脚本编程30分钟入门 转载地址: Shell脚本编程30分钟入门 什么是Shell脚本 示例 看个例子吧: #!/bin/sh cd ~ mkdir shell_tut cd shell_t ...

  4. Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程

    Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程 教程简介: 本教程共71节,主要介绍了shell的相关知识教程,如shell编程需要的基础知识储备.shell脚本概念介 ...

  5. 【Shell脚本学习13】Shell数组:shell数组的定义、数组长度

    Shell在编程方面比Windows批处理强大很多,无论是在循环.运算. bash支持一维数组(不支持多维数组),并且没有限定数组的大小.类似与C语言,数组元素的下标由0开始编号.获取数组中的元素要利 ...

  6. Shell数组:shell数组的定义、数组长度

    Shell在编程方面比Windows批处理强大很多,无论是在循环.运算. bash支持一维数组(不支持多维数组),并且没有限定数组的大小.类似与C语言,数组元素的下标由0开始编号.获取数组中的元素要利 ...

  7. 跟着老男孩一步步学习Shell高级编程实战

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://oldboy.blog.51cto.com/2561410/1264627 本sh ...

  8. 转:linux shell 数组建立及使用技巧

    linux shell在编程方面比windows 批处理强大太多,无论是在循环.运算.已经数据类型方面都是不能比较的. 下面是个人在使用时候,对它在数组方面一些操作进行的总结. 1.数组定义 [che ...

  9. (C#)Windows Shell 外壳编程系列8 - 同后缀名不同图标?

    原文 (C#)Windows Shell 外壳编程系列8 - 同后缀名不同图标? (本系列文章由柠檬的(lc_mtt)原创,转载请注明出处,谢谢-) 接上一节:(C#)Windows Shell 外壳 ...

随机推荐

  1. flask中使用ajax 处理前端请求,每隔一段时间请求不通的接口,结果展示同一页面

    需求: flask中使用ajax 处理前端请求,每隔一段时间请求不通的接口,结果展示同一页面 用到 setTimeout方法,setTimeout(function(){},1000):setTime ...

  2. Java原子类--AtomicLongArray

    转载请注明出处:http://www.cnblogs.com/skywang12345/p/3514604.html AtomicLongArray介绍和函数列表 在"Java多线程系列-- ...

  3. 一步一步使用webpack搭建项目

    MPA |-src |-main.js 项目打包的入口文件 |-App.vue 项目的根组件(项目一启动,见到的第一个页面) |-package.json 项目的描述文件,用于记录安装了哪些包 |-w ...

  4. JavaScript常用的方法

    indexOf() 功能:indexOf() 方法返回调用 String 对象中第一次出现的指定值的索引. 语法:indexOf(searchValue, fromIndex) searchValue ...

  5. PHP基础语法之 三元运算符和其它运算符

    三元运算符和其它运算符 此外还有一些特殊的运算符和符号,我们再来进行讲解.可能以后我们需要用到.直线电机选型 符号 说明 $x? 真代码段:假代码段 判断是否为真假 ? 真情况 : 假情况; ``(反 ...

  6. DevTool-Network

    如图所示,图中蓝线表示DOMContentLoaded事件触发时经过的时间,DOM树构建花费的时间. 图中红线表示onload事件触发时经过的时间,也是所有的资源(图片等)下载处理完成的时间. 图中绿 ...

  7. 学习了武沛齐讲的Day10-完

    int       整形 int     将字符串转换为数字 x.bit_length()  ===== 当前数字的二进制,至少用n位表示 str       字符串 x.capitalize()== ...

  8. HTML怎么块外横向剧中

    HTML  块外横向剧中    在HTML中有一个块外横向剧中的代码  那就是margin:0 auto  这个能是块内元素横向剧中 剧中前: 剧中后

  9. 轻松掌握mongodb

    mongodb 是一种非关系型的,面向文档的数据库,也是nosql类的产品 memcache,redis等等 与mysql最大的区别:mongodb 使用javascript语言操作,保存是以json ...

  10. jQuery获取元素的方式

    一.通过id选择器获取并操作元素--------$("#id属性的值") <script src="http://libs.baidu.com/jquery/1.1 ...