2016-07-11 8 views
7

- 私の中に要素を追加します。は、動的配列に要素を追加しようとしているアレイ

array=("element1" "element2" "element3") 
    fa=() 
    # now loop through the above array 
    for i in "${array[@]}" 
    do 
     fa+=("$i") 
     # or do whatever with individual element of the array 
    done 

    echo $fa 

しかし、それはelement1を返します。

私はインデックスを使用して試してみたが、私は同じ結果を取得しています:

fa[index]="$i" 
((index++)) 

私はここで何か間違ったことをやっていますか?

+0

サイドノートでは、すべてのシェルが 'fa + =(" $ i ")'スタイルをサポートしているかどうかを再確認することができます。 – sjsam

答えて

13

印刷に問題があります。つまり、echo $faです。これは、配列の最初の要素を意味echo ${fa[0]}と同等であるので、あなたはあなたの全体の配列を与える必要があります

echo "${fa[@]}" 

element1を得ました。

リファレンス

[ This ]はあなたのbashのアレイについての素晴らしい説明を与える必要があります。

関連する問題