shell脚本——数组

       连续的变量

       解决:变量过多的问题,在同一类变量中,不需要定义多个名字,而是以数组的方式来定义

       定义数组:

              declare -I 定义整数

              declare -a 定义数组

              declare -A 定义嵌套数组

                            array=(值)

                            array=()

              如何给数组赋值:

                            array=()

                            1.array[0]=whr  (在计算机预言中,索引一般从0开始计算)

                                   索引并不一定是数字:key-value array[whr]=1.78m

                                   shel 中数组赋值,可以跳跃

                            2.array=(/var/log/*.log)

                                          做遍历

                                   array=(a b c d e)

                            3.array=('whr=178' 'wsl=175' …)

                            4.通过read命令来赋值

                                   read -a a b c d e

              如何去调用数组:

                            ${数组名[索引]}

                            ${数组名} 默认调用索引=0的值

                            ${*}  ${@} 所有元素

              调用数组的长度:

                     length("变量")

                     ${#变量名【*】}或者${#变量名[@]}

                     添加数组值的特殊方式

                     ${变量名[$(#变量名[@])]}="值"

              数组切片:

              ${变量名[@]:偏移量:所需取出的个数}

              删除值:

              unset 变量名[索引]

posted @ 2019-08-21 11:11  Sean_Martin  阅读(308)  评论(0编辑  收藏  举报