#赋值
1. 单个赋值
[root@qls /service/scripts/day12]# array1[0]=linux
[root@qls /service/scripts/day12]# array1[1]=nginx
[root@qls /service/scripts/day12]# array1[2]=php-fpm
[root@qls /service/scripts/day12]# array1[3]=mariadb
2. 赋值多个值
[root@qls /service/scripts/day12]# array2=(linux apache php-fpm mariadb)
#如果遇到特殊的值
[root@qls /service/scripts/day12]# array3=(linux apache 'php fpm' mariadb)
#自定义索引号
root@qls /service/scripts/day12]# array4=(linux apache [6]=php-fpm mariadb)
3. 通过命令进行赋值
[root@qls /service/scripts/day12]# array5=($(cat /etc/hosts))
#获取数组的内容
#显示系统中所有的已定义的普通数组
[root@qls /service/scripts/day12]# declare -a
declare -a BASH_ARGC='()'
declare -a BASH_ARGV='()'
declare -a BASH_LINENO='()'
declare -ar BASH_REMATCH='()'
declare -a BASH_SOURCE='()'
declare -ar BASH_VERSINFO='([0]="4" [1]="2" [2]="46" [3]="2" [4]="release" [5]="x86_64-redhat-linux-gnu")'
declare -a DIRSTACK='()'
declare -a FUNCNAME='()'
declare -a GROUPS='()'
declare -a PIPESTATUS='([0]="0")'
declare -a array1='([0]="linux" [1]="nginx" [2]="php-fpm" [3]="mariadb")'
declare -a array2='([0]="linux" [1]="apache" [2]="php-fpm" [3]="mariadb")'
declare -a array3='([0]="linux" [1]="apache" [2]="php fpm" [3]="mariadb")'
declare -a array4='([0]="linux" [1]="apache" [6]="php-fpm" [7]="mariadb")'
declare -a array5='([0]="127.0.0.1" [1]="localhost" [2]="localhost.localdomain" [3]="localhost4" [4]="localhost4.localdomain4" [5]="::1" [6]="localhost" [7]="localhost.localdomain" [8]="localhost6" [9]="localhost6.localdomain6")'
#获取数组中元数的个数 值的个数 索引的个数
[root@qls /service/scripts/day12]# echo ${#array1[*]}
4
[root@qls /service/scripts/day12]# echo ${#array1[@]}
4
#获取某个索引值的长度
[root@qls /service/scripts/day12]# echo ${#array1[0]}
5
#获取数组中的某一个值 元数
[root@qls /service/scripts/day12]# echo ${array1[0]}
linux
[root@qls /service/scripts/day12]# echo ${array1[1]}
nginx
[root@qls /service/scripts/day12]# echo ${array1[2]}
php-fpm
[root@qls /service/scripts/day12]# echo ${array1[3]}
mariadb
#获取数组中所有的元数 值
[root@qls /service/scripts/day12]# echo ${array1[*]}
linux nginx php-fpm mariadb
[root@qls /service/scripts/day12]# echo ${array1[@]}
linux nginx php-fpm mariadb
#获取数组中的所有的索引
[root@qls /service/scripts/day12]# echo ${!array4[*]}
0 1 6 7
[root@qls /service/scripts/day12]# echo ${!array4[@]}
0 1 6 7
[root@qls /service/scripts/day12]# echo ${!array1[@]}
0 1 2 3
#从某个索引开始显示,显示剩下的所有
[root@qls /service/scripts/day12]# echo ${array1[@]:1}
nginx php-fpm mariadb
[root@qls /service/scripts/day12]# echo ${array1[@]:0}
linux nginx php-fpm mariadb
#从某个索引开始,访问几个值
[root@qls /service/scripts/day12]# echo ${array1[@]:0:2}
linux nginx
[root@qls /service/scripts/day12]# echo ${array1[@]:1:2}
nginx php-fpm
[root@qls /service/scripts/day12]# echo ${array1[@]:2:2}
php-fpm mariadb
Shell普通数组的应用
最新推荐文章于 2024-06-21 22:19:13 发布