Shellで配列のマージ
Shellスクリプトで配列のマージってどうやるんだろうって思ったので調べてみたら、${ARRAY[*]} か ${ARRAY[@]} で配列の要素を全部取得できるらしいので、それを () 使ってマージすればいいらしい。
#!/bin/sh ARRAY1=(1.1.1.1 2.2.2.2) ARRAY2=(3.3.3.3 4.4.4.4) ARRAY3=(4.4.4.4 5.5.5.5) MERGED=(${ARRAY1[*]} ${ARRAY2[*]} ${ARRAY3[*]}) for n in ${MERGED[*]}; do echo $n done
を実行すると
1.1.1.1 2.2.2.2 3.3.3.3 4.4.4.4 4.4.4.4 5.5.5.5
となる。重複してる値はもちろんケアしてくれないので、頑張って取り除く必要あり。
こちらもあわせてどうぞ
コメント