Bash:使用参数数组调用脚本

时间:2017-05-16 20:54:10

标签: bash

给定一个bash数组,我想用该数组作为参数调用另一个脚本。我期望$ {X [@]}可以做我想要的,但是该字符串会连接args,而不是分别传递args。例如:

X=()
X+='a'
X+='b'
./p.sh ${X[@]}

使用1个arg调用p.sh,其值为“ab”。我想用2个args调用p.sh,第一个是'a',第二个是'b'。

1 个答案:

答案 0 :(得分:1)

echo ${X[0]}输出ab,显示您的+=附加到第一个元素。 (命令echo ${#X[@]}也会输出1。)使用

X=()
X+=('a')
X+=('b')
./p.sh "${X[@]}"