美文网首页编程中国
Linux中Shell数组的笔记

Linux中Shell数组的笔记

作者: 小明yz | 来源:发表于2019-06-03 19:18 被阅读1次

Shell数组的介绍

数组算是一种特殊的数据结构,数据项可以成为数组的元素,可以通过数组的索引获取每一个数组的元素值。

数组的典型的使用场景是把相同类型的元素汇总在一起。由于Shell变量属于弱类型,所以数组里面的元素并不一定是相同类型。

注意:Shell中的数组只支持一维数组,但对元素的个数没有限制,数组元素的索引也是从0开始。

数组的定义

数组的定义格式:declare -a 数组名称

比如:declare -a testarr #定义一个testarr数组

testarr[0]=10 #第一个元素赋值

testarr[1]="hello" #第二个元素赋值

#数组定义的时候同时赋值

declare -a testarr=(10,'hello') 等价于 testarr=(10,'hello')

testarr[2]=20 #增加元素

#不连续赋值

testarr1=([1]=10 [3]=30 [5]=50)

数组的操作

1、数组的取值

格式如下:${数组名[索引]}

比如:echo ${testarr[0]}

echo ${testarr[@]} #获取元素的所有值  输出以空格隔开的元素值

echo ${testarr[*]} #获取元素的所有值,输出的是一整个字符串

2、数组长度

方法如下:

echo ${#testarr[@]} #获取数组元素的个数

echo ${#testarr[*]} #获取数组元素的个数

echo ${#testarr[0]} #获取数组某一个元素的长度

3、数组截取

echo ${testarr[@]:1:2} 

#获取数组的索引值是1、2的元素

echo ${testarr[2]:0:2} 

#获取数组索引值是2元素值截取从第0个字符开始连续2个字符

4、连接数组

testarr2={${testarr[@]} ${testarr1[@]}} #合并数组

5、替换元素:将数组内某个元素值替换成其他值

testarr=($testarr[@]/hello/helloworld)

6、取消数组或元素

unset $testarr #取消数组

unset $testarr[0] #取消数组的一个元素

相关文章

  • Linux中Shell数组的笔记

    Shell数组的介绍 数组算是一种特殊的数据结构,数据项可以成为数组的元素,可以通过数组的索引获取每一个数组的元素...

  • linux shell脚本攻略笔记

    LINUX SHELL脚本攻略笔记[速查] linux shell脚本攻略笔记

  • Linux Shell:Shell数组操作

    摘要:Linux,Shell Shell数组类型 Shell数组分为普通数组和关联数组,普通数组就是相同类型的元素...

  • 1.7 数组和关联数组

    《Linux Shell 脚本攻略(第 2 版)》读书笔记 定义数组 或者 打印指定索引的数组元素内容 以清单形式...

  • Linux Shell 动态生成 数组系列 Seq 使用技巧

    Linux Shell 动态生成 数组系列 Seq 使用技巧 如果对linux shell 数组不是很熟悉的话,请...

  • Shell 数组与数学运算

    参考书籍 Linux shell 脚本攻略 数组和关联数组 数组分类普通数组:只能使用整数作为数组索引。关联数组:...

  • 1.1 开始

    《Linux Shell 脚本攻略(第 2 版)》读书笔记 Bash (Bourne Again Shell)是目...

  • Linux Shell学习笔记

    Linux Shell学习笔记 基本信息 系统:Debian 9.5 发行信息:Debian GNU/Linux ...

  • Shell 学习笔记

    Shell 学习笔记 Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是...

  • Shell入门笔记

    本笔记参考 Linux探索之旅 1.什么是Shell 2.Shell种类 3.Shell脚本文件 4.Shell变...

网友评论

    本文标题:Linux中Shell数组的笔记

    本文链接:https://www.haomeiwen.com/subject/kbshxctx.html