我有两个shell脚本a.sh,b.sh。
--------a.sh---------
array=(1.1 1.2 1.3)
./b.sh $array
--------end a.sh---------
--------b.sh---------
packageVersionArr=$1
for i in ${packageVersionArr[@]}; do
echo $i
done
--------end b.sh---------
console only print: 1.1
我的1.2和1.3在哪里?
答案 0 :(得分:1)
$array
是第一个元素,您需要${array[*]}
。请参阅guide中的数组。
bash -x
$ array=(1.1 1.2 1.3)
+ array=(1.1 1.2 1.3)
$ ./b.sh $array
+ ./b.sh 1.1
...
$ ./b.sh ${array[*]}
+ ./b.sh 1.1 1.2 1.3
...