我正在尝试在 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")'