Shell脚本数组与冒泡排序

在shell脚本中,我们用变量存储一个值,那么多个值该怎么存储呢?我们可以使用数组,存储多个数值#

一.数组的概述

1.1数组的定义

基本格式:数组名=(value1 value2 … valuen)
数组中可以存放多个值。Bash Shell 只支持一堆基数(不支持多维数组)
Shell 数组用括号来表示,元素用"空格"符号分割开
数组元素的下标由0开始

数组: a=(1 2 3 4 5)
下标:    0 1 2 3 4 

在shell语句中,使用、遍历数组的时候,数组格式要写成 ${arr[@]} 或 ${arr[*]}

 

1.2定义数组

定义数组的方法一般有三种:
方法一:
数组名=(value1 value2 … valuen)

 方法二:
数组名=([0]=value0 [1]=value0 [2]=value0 …)

 方法三:
数组名[0]=“value”
数组名[1]=“value”
数组名[2]=“value”

 

1.3数组长度

一个数组有若干个数据,那么我们如何获得数组的长度呢?
我们可以使用”$#“获取一个数组的长度

${#数组名[*或@]}

 

二.数组的使用

2.1数组追加元素

在定义了一个数组之后,如何向其中添加新的元素呢?
我们可以使用定义数组时使用的,用下标进行新的元素追加

格式:数组名[下标]=变量

 那么进行多个元素追加,这样使用下标就过于繁琐

数组名+=(value1 value2 ... valuen)

 

2.2数组元素替换

对数组中的某个元素进行更改
格式:数组名=(${数组名[*]/被换元素/替换元素})  #注意小括号()

 

2.3数组元素删除

对数组或数组元素删除时,可以使用unset
格式:

unset 数组名       #删除整个数组

unset 数组名[下标]  #删除对应下标元素

 

2.4数组切片

对数组的调用,我们可以打印整个数组或某个下标对应的元素,若取数组中的某个段该怎么使用呢?${数组名[*]:下标:个数}
例如:${a[*]:1:4}     #取出数组a下标1及其后的4为元素

 冒泡排序,对数组中的数值按大小进行排序

 

 

四.总结

1.在使用数组的时候,一定要注意数组的下标是从0开始
2.数组元素替换时。格式为:数组名=(${数组名[*]/被换元素/替换元素})、要注意外面有个小括号

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值