重複の可能性:
Bash:パイプの右側にアレイを構築できません
ファイルから配列を作成する必要があります。データを保存する場所のインデックスを計算する必要があります。読み取りループの外に出ると、配列がなくなっているように見えます。なぜ???
以下のスクリプトは、問題を示しています。
#!/bin/bash
echo -e "15\n21\n33" | while read i ; do
ar[$i]="set"
echo ${!ar[@]}
echo ${ar[@]}
done
echo
echo outside loop:
echo ${!ar[@]}
echo ${ar[@]}
出力からわかるように、配列のインデックスとコンテンツの出力はループの外では機能しなくなりました。
15
set
15 21
set set
15 21 33
set set set
outside loop: