数组

作者: ALuckyLive | 来源:发表于2020-08-06 14:50 被阅读0次

    数组的下标从零开始
    shell数组用括号()表示,元素由空格分隔
    array_name=(value1 ... value10)
    数组名=([0]=value [1]=value [2]=value...)

    • 数组的定义模式
    #!/bin/bash
    array=( one two three )
    echo ${array[@]}
    
    #!/bin/bash
    array=(
               one
               two
               three
               )
    echo ${array[@]}
    
    #!/bin/bash
    array[0]=one
    array[1]=two
    array[2]=three
    echo ${array[@]}
    

    数组遍历,调用数组元素编号

    #!/bin/bash
    array=( one two three )
    for i in ${!array[@]}
    do 
         echo ${array[i]}
    done
    
    
    #!/bin/bash
    array=( one two three )
    for i in ${array[@]}
    do
         echo $i
    done     
    

    删除数组中的元素
    unset array[index]

    #!/bin/bash 
    array=( 10 20 30 )
    echo ${#array[@]}
    unset  array[0]
    echo ${array[@]}
    

    数组分片格式
    ${array[@]:起始位:数字长度}中间以":"隔开,如果第二项省略的话,就取后面所有的项

    #!/bin/bash
    array=(10 20 30 40 50)
    echo ${array[@]}
    echo ${array[@]:0:2}
    echo ${array[@]::3}
    echo ${array[@]:-2:1}
    

    求数组中的最大数

    #!/bin/bash
    for ((i=1;i<=5;i++))
    do
         read -p "请输入第"$i"次的数字:" num
         array[$i-i]=$num
    done
    max=array[0]
    for ((k=1;k<=${#array[@]}-1;k++))
    do
           if [ $max -le ${array[k]} ]
           then
                  max=$array[k]
          fi
    done
    echo $max      
    
    

    相关文章

      网友评论

          本文标题:数组

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