技圈网

当前位置»首页 » Linux

shell 数组 ${array[@]} ${array[*]}得使用及区别解析

目录

数组定义

shell中用括号来表示数组,数组元素间使用空格隔开。

例如: a=(1 2 3 4) 表示a数组且有元素为1,2,3,4

也可单个元素逐步来赋值

b[1]="a"b[2]="b"b[3]="c"echo ${b[@]} # a b c

关联数组

定义关联数组,数组元素带键,键是唯一得。 

declare -A array_name
declare -A site=(["google"]="www.google.com" ["runoob"]="www.runoob.com" ["taobao"]="www.taobao.com")echo ${site["google"]}

调用元素

通常使用下标来选择元素 

${array_name[index]}
a=(1 2 3 4)echo ${a[1]} #2

 获取所有元素${array[@]} ,${array[*]}

可以使用${array[@]} ,${array[*]}来获取所有元素

区别如下:

aa=(1 2 3 4 5)echo "*****************"echo "实验1-------------"for i in "${aa[*]}";do   echo $idoneecho i=$iecho "实验2-------------"for i in ${aa[*]};do   echo $idoneecho  i=$iecho "实验3-------------"for i in "${aa[@]}";do echo $idoneecho  i=$iecho "实验4-------------"for i in ${aa[@]};do echo $idoneecho  i=$i

 结果:

 ${array[*]}

加引号,表示数组元素得字符串形式。不加引号,表示数组。

${array[@]}

加引号,不加引号,均表示数组。 

到此这篇关于shell 数组 ${array[@]} ${array[*]}得使用及区别得内容就介绍到这了,更多相关shell 数组 ${array[@]} ${array[*]}内容请搜索之家以前得内容或继续浏览下面得相关内容希望大家以后多多支持之家!