配列(Array)





配列の定義


SYNTAX a=(element ... )
# 配列は () for in と誤解しないように... # 代入時に $ がいらないのは, 変数 と同じ a=(a b c);
# 参照 # $a と shell が誤解しないように {} をつける BAD $a[0] OK ${a[0]} # 要素を追加 # a=("${a[@]}" "foo")
# 要素数 ${#a[@]}
# コマンド結果を配列にいれる a=(`ls`) echo ${a[0]} echo ${a[1]} echo ${a[2]} # ls の結果が置換されたのと同じ a=("aaa" "bbb" "ccc")
# $() は コマンドを実行した結果( STDOUT に出力される文字列 )を返す # 実は `cmd` と同じ しかも Nest できる # array=$(ls)
# スペース区切りに展開するには @ 演算子 をつかう a=(1 2 3 4) i=0 for i in ${a[@]};do echo $i done a[0]=1; a[1]=2; a=a(a b c d) # command 結果を 配列にセット a=(`ls`) a=(a b c d); echo ${#(a b c d)} # すべてをかえす ${a[@]}; WARNING space 区切りの文字を loop できない