空の要素で配列をコピーしているbash(ver 4.2.25)に問題があります。私が別の変数に配列のコピーを作ると、空の要素はコピーされません。空の要素を持つBash配列をコピーする
#!/bin/bash
array=('one' '' 'three')
copy=(${array[*]})
IFS=$'\n'
echo "--- array (${#array[*]}) ---"
echo "${array[*]}"
echo
echo "--- copy (${#copy[*]}) ---"
echo "${copy[*]}"
私はこれを行うと、ここで出力されます:
--- array (3) ---
one
three
--- copy (2) ---
one
three
元の配列が空の要素を含む、すべての3つの要素がありますが、コピーはしません。私はここで間違って何をしていますか?
を行うことができますちょうどそれを試してみましたが、残念ながら何も変わっていません。 –
私はそれを疑う - あなたは '@'と二重引用符の両方を持っていますか?私はいくつかの出力例を追加しました。 –
ああ、二重引用符!申し訳ありませんが、二重引用符は表示されませんでした。うん、それはうまくいった。だから私を助け、なぜ引用符でこの仕事をするのですか? –