创建数组,不起作用

创建数组,不起作用

我正在尝试在 bash 脚本中创建一个数组。我正在这样做:

#!/bin/bash
declare -a testArray1=('a/b/c.def -x -y -z','x/y/z.000 -a -b -c')

echo "testArray1[0] = ${testArray1[0]}"
echo "testArray1[1] = ${testArray1[1]}"

但这不起作用。所有内容都被添加到[0]数组的单个元素中。

我究竟做错了什么?

答案1

使用这个代替:

declare -a testArray1=('a/b/c.def -x -y -z' 'x/y/z.000 -a -b -c')

顺便提一句:您可以使用 检查数组结构declare -p,请参阅:

$ declare -a testArray1=('a/b/c.def -x -y -z','x/y/z.000 -a -b -c')
$ declare -p testArray1
declare -a testArray1='([0]="a/b/c.def -x -y -z,x/y/z.000 -a -b -c")'
$
$ declare -a testArray1=('a/b/c.def -x -y -z' 'x/y/z.000 -a -b -c')
$ declare -p testArray1
declare -a testArray1='([0]="a/b/c.def -x -y -z" [1]="x/y/z.000 -a -b -c")'

相关内容