shell数组

一.shell数组

1.应用场景包括

    获取数组长度
    获取元素长度
    遍历元素
    元素切片
    元素替换
    元素删除

2.数组定义方法

1):数组名=(value0 value1 value2...)
2):数组名= [0]=value [1]=value [2]=value
3):列表名="value0 value1 value2"
      数组名=($列表名)
4):数组名[0]="value"
       数组名[1]="value"
       数组名[2]="value"

3.数组包含的数据类型:

数值类型
字符类型
使用""或’'定义

二.shell数组操作

1.获取数组长度

echo ${数组名[*/@]}    ##数组内容
echo ${#数组名[*/@]}   ##数组内容个数
echo ${数组名[下标]}    ##获取数组中某个下标的值。下标:$0.$1.$2

2.数组遍历

for v in ${数组名[*/@]}   ##v:变量名
do
  echo $v
done

3.数组切片

${数组名[*/@]:起始位置:长度}
例:a=1 2 3 4 5
${a[@]:0:2}    ##表示从$0开始,长度为2,即内容为1、2

4.数组的替换

不替换原先数组内容,仅在输出时替换输出显示

${数组名[*/@]/查找字符/替换字符}

5.数组删除

a=1 2 3 4 5
unset a    ##删除

6.冒泡排序

vi num.sh

#!/bin/bash
#冒泡排序
num=(60 30 50 20 100 70)
for ((i=1;i<${#num[*]};i++))
do
    for ((j=0;j<${#num[*]}-$i;j++))
    do
            if [ ${num[$j]} -gt ${num[(($j+1))]} ]
            then
            temp=${num[$j]}
            num[$j]=${num[(($j+1))]}
            num[(($j+1))]=$temp
            fi
    done
done
 echo ${num[*]}

三.shell脚本调试

1.echo命令

2.bash命令

sh [-nvx] 脚本名

2.2选项

 -n:不会执行该脚本,并检查语法
-v:执行时,先将内容输出到屏幕再执行脚本
-x:将执行内容输出到屏幕上

3.set命令

set -x:开启调节模式
set +x:关闭调节模式
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值