ヒアドキュメントで配列に入れる
Bashでヒアドキュメントを使って改行毎に配列に入れたいと思った
普通に配列に入れる時は
ARRAY1=('A' 'B' 'C')
という感じで半角スペースで区切ってやればOKなのは知ってる
ただ、多くのデータを配列に初期値として入れたい場合、いちいち半角スペースで区切って書くのが面倒なのでヒアドキュメントを使いたくなる
で・・・
ARRAY2<<-EOF
A
BB
CCC
EOF
なんて書いてみるが、単純にARRAY2に改行ごと格納されるだけ(--;)
どうするのかなぁ~と思ってたらBash4以上であればmapfileを使えば可能なのが判明
まぁ、mapfileなんて初めて聞いたんだけどね
参考にしたのはこちら
書き方としては・・・
mapfile ARRAY3<<-EOF
XXX
YYY
ZZZ
EOF
とするだけ(^^;)
なかなか奥が深い
- 作者: Cameron Newham,Bill Rosenblatt,株式会社クイープ
- 出版社/メーカー: オライリージャパン
- 発売日: 2005/10/27
- メディア: 大型本
- 購入: 7人 クリック: 138回
- この商品を含むブログ (47件) を見る