Bashでは、印刷時に配列が異なる動作をします
a=( 11 22 )
。b=$(echo "11 22")
$ a=( 11 22 )
$ b=$(echo "11 22")
$ echo $b
11 22
$ echo $a
11
内容全体を印刷a
するには。${a[*]}
$a
括弧による配列割り当てとコマンド置換による配列割り当ての動作の違いをどのように説明できますか?
ベストアンサー1
次のコメントをいただいた@casに感謝します。
$ bは配列ではなく、「11 22」を含む文字列です。
等しい
a=( 11 22 )
はい
b=($(echo "11 22"))
だから
$ a=( 11 22 )
$ b=($(echo "11 22"))
$ echo $a
11
$ echo ${a[*]}
11 22
$ echo $b
11
$ echo ${b[*]}
11 22