理论知识:

变量内存空间,bash所有的变量都默认存储为字符类型

数组:连续的内存空间


数组的声明:

     declare -a ARRAY_NAME

数组的赋值方法:

     1.ARRAY_NAME[index]=VALUE

     2.ARRAY_NAME=(VALUE1 VALUE2 VALUE3)

     3.ARRAY_NAME=([index1]=VALUE1 [index2]=VALUE2 [index3]=VALUE3)

数组元素值的引用:

     ${ARRAY_NAME[index]}

数组元素值的字符个数的引用:

     ${#ARRAY_NAME[index]}

数组元素的个数的引用:

     ${#ARRAY_NAME[*]}

     ${#ARRAY_NAME[@]}

数组所有元素的引用:

     ${ARRAY_NAME[@]}

     ${ARRAY_NAME[@]}


实例:随机生成一个由10个数字组成的数组,然后从数组中找出最大的数字

#!/bin/bash
#
declare -a ARRAY

for i in {0..9}
do
  ARRAY[$i]=$RANDOM
done

echo ${ARRAY[*]}

declare -i MAX=${ARRAY[0]}

for ((i=0;i<${#ARRAY[@]};i++))
do
if [ $MAX -lt ${ARRAY[$i]} ] ; then
  MAX=${ARRAY[$i]}
fi
done

echo $MAX