给定一个bash数组,我想用该数组作为参数调用另一个脚本。我期望$ {X [@]}可以做我想要的,但是该字符串会连接args,而不是分别传递args。例如:
X=()
X+='a'
X+='b'
./p.sh ${X[@]}
使用1个arg调用p.sh,其值为“ab”。我想用2个args调用p.sh,第一个是'a',第二个是'b'。
答案 0 :(得分:1)
echo ${X[0]}
输出ab
,显示您的+=
附加到第一个元素。 (命令echo ${#X[@]}
也会输出1
。)使用
X=()
X+=('a')
X+=('b')
./p.sh "${X[@]}"