○配列に要素を加える方法
$ K=("vvv" "123" "456") ; K+=("abc") ; K+=("abc") ; echo ${K[@]}
vvv 123 456 abc abc上記では、最初に配列Kを用意して、要素を三つ("vvv" "123" "456") 作成している。
この配列Kに要素("abc") を順に2回加えて、
最後に配列の要素を表示するという処理を行っている。
注意点は、配列というものは、""で括った要素をさらに小括弧()で括ったものだということである。
さもなければ、次のように配列の要素ではなくなってしまう。
$ K=("vvv" "123" "456") ; K+="abc" ; K+="abc" ; echo ${K[@]}
vvvabcabc 123 456
○配列の配列としての取り扱い方
せっかくの配列Kなのに、${K}として扱うと文字列になってしまった。
$ K=("vvv" "123" "456") ; K+="abc" ; K+="abc" ; echo ${K}
vvvabcabc
そして要素数は文字数になってしまった。
$ K=("vvv" "123" "456") ; K+="abc" ; K+="abc" ; echo ${#K}
9
次のように、[@]を変数名に付加すると配列として扱われる。
$ K=("vvv" "123" "456") ; K+="abc" ; K+="abc" ; echo ${#K[@]}
3
■ファイルに保存された要素を配列に格納して表示する手順
次のようなファイルがあるとする。
# cat test.txt
abc@abc
def@def
ghi@ghi
次の手順で、上記ファイルに保存された要素を配列に順に格納して、
最後に配列の内容を一覧表示させる。
# ArryADDR=() ; for ADDR in `cat test.txt` ; do ArryADDR+=("$ADDR") ; done ; echo ${ArryADDR[@]}
abc@abc def@def ghi@ghi
<参考>
・配列を使用する
< https://shellscript.sunone.me/array.html > 2019年2月6日