首页 > 代码库 > Linux数组array基础

Linux数组array基础

Linux数组array基础【${a[*]}和$a的区别】

 

Bash中,数组变量的赋值有两种方法:

  (1) name = (value1 ... valuen) 此时下标从0开始

  (2) name[index] = value

  下面以一个简单的脚本来说明,脚本内容如下:

 

#!/bin/bash#定义数组A=(a b c d e f )#把数组按字符串显示输出echo ${A[@]}#数组的长度表示${#A[*]}len=${#A[*]}echo ${#A[*]}#屏幕显示:6#改变数组元素的值A[3]=vivianecho ${A[*]}#屏幕显示:a b c vivian e f#循环输出数组元素i=0while [ $i -lt $len ]doecho ${A[$i]}let i++done#循环输出数组元素的另一种写法,注意,在条件中,引用变量一定要用双引号 ,否则报错for (( j=0; j<"$len"; j=j+1 ))doecho ${A[$j]}done#循环输出数组元素的另一种写法,注意,${A[*]}不能写成$A ,$A默认是第一个元素,如果A="a b c ded",就可以写$Afor value in ${A[*]}doecho $valuedoneB="a b c d e f"for value in $Bdo        echo $valuedonearray=($B)echo array_length : ${#array[*]}#就相当于B=(1 2 3 4),不信你可以试试echo ${array[@]}echo ${array[@]}#上面的例子还可以改写成以下内容:for value in ${array[*]}doecho $valuedone