关闭

shell数组

264人阅读 评论(0) 收藏 举报

bash shell只支持一维数组,但参数个数没有限制。

数组下标从0开始使用

声明一个数组:

declare -a array
(其实不用声明,按数组方式直接赋值给变量即可,BASH就知道那是数组)

数组赋值:
(1) array=(var1 var2 var3 ... varN)
(2) array=([0]=var1 [1]=var2 [2]=var3 ... [n]=varN)
(3) array[0]=var1
    arrya[1]=var2
    ...
    array[n]=varN


计算数组元素个数:

${#array[@]}  或者  ${#array[*]}

$@表示参数的集合:“$1” ”$2” “$3” ,每个变量用双引号隔开。$*表示参数的集合:$1 $2 $3,默认用空格隔开。在这里两个都可以查询数组的个数。


遍历数组:

#!/bin/bash
array[0]=1
array[1]=3
array[2]=5
for((i=0;i<3;i++))
do
        echo ${array[i]}
done
echo "the number of array is ${#array[@]} "

 

列出数组中所有的元素

echo${colors[@]}          # echo ${colors[*]} 也可以。

复制数组:

array2=${array1[@]}

声明一个数组并初始化数组

 declare -acolors 
 #  所有脚本后面的命令都会把 
 #+ 变量"colors"作为数组对待. 
 echo "Enter your favorite colors (separated from each other by aspace)." 
 read -a colors    # 键入至少 3 种颜色以用于下面的示例. 
 #   指定'read'命令的选项, 
 #+ 允许指定数组元素.  

 

 

 

 

 

 


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:13435次
    • 积分:313
    • 等级:
    • 排名:千里之外
    • 原创:15篇
    • 转载:20篇
    • 译文:1篇
    • 评论:0条
    文章分类