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")'