shell数组

数组:数字组成的组,组里即可以Int类型,string字符串

数组当中的数据类型可以由用户自定义

同一种,也可以是不同的数据类型组成的元素集合

数组最大的作用:可以一次性定义多个变量

shell中数组的创建、修改、和应用

格式:

1.数组名=(数组的元素,多个数组用空格隔开)

打印:echo ${数组名[*或@]}

2.数组名=([0]=元素 [1]=元素 [2]=元素)

[0] [1] [2]:数组下标索引,数组当中元素位置的起始下标索引都是0

打印数组中对应下标的元素:echo ${数组名[0]}

打印数组中有几个元素或者获取数组长度:echo ${#数组名[*或@]}

数组的增删改查:

数组的遍历:

创建多个用户并为他们设置密码:

数组的切片:

echo ${hqy[*]:2:3}

2:表示当前数组中索引下标为2的元素

3:表示从当前元素开始,往后走几位,包含自己的位置

数组替换:替换数组当中的元素

临时替换:

echo ${hqy[*]/4/66}

4:原来的元素

66:替换成的元素

永久替换:重新赋值的方法

hqy=(${hqy[*]/4/66})

删除数组以及删除数组当中的指定元素:

直接删除整个数组:

unset hqy

删除数组当中的指定元素:通过索引下标的方法

unset hqy[2]

为数组添加元素:

第一种:通过索引下标,索引位置为空就是追加,索引位置有值就是替换

注意:追加元素,一般都是按照索引下标的顺序来进行添加

hqy[5]=6

第二种:在元素最后的位置直接添加一个元素

hqy[${#hqy[*]}]=7

第三种:在元素最后的位置直接添加一个元素,可以添加多个元素

hqy+=(8 9)

数组的应用:

seq命令:自动生成数字排序

seq 1 10:1-10

利用函数生成一个数组:

利用外部数组给函数传参实现1-10的累加

 

函数中套用数组,将数组中的所有元素乘2后生成一个新的数组:

 

冒泡排序:面试题

类似于气泡上涌,在数组中从小到大,或者从大到小来进行排序,就是把一个顺序混乱的数组,按照从小到大或者从大到小的顺序进行排序。

abc=(20 10 60 40 50 30)------>abc=(10 20 30 40 50 60)

从小到大排序:

排序的思路:

1.两个相邻的数比较

2.大的往右走,小的往左走

代码思路:

冒泡排序需要双循环

外循环需要确定次数

内循环比较大小,换位置

例题:打印磁盘已用百分比,并按照从大到小排序

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值