シェルスクリプトで、配列の要素をループ処理する記述方法を紹介します。
以下がそのサンプルコードです。
#!/usr/bin/sh
set -eu
array=( foo \
bar \
baz
)
for i in "${array[@]}"
do
echo "$i"
done
- 配列の要素を1行ずつ書いています。これなら途中の要素は、先頭に「#」を書くことでコメントアウトすることができます。
出力結果はこうなります(ファイル名を array-loop.sh
としてあります)。
$ ./array-loop.sh
foo
bar
baz
ちなみに Ubuntu の場合、/usr/bin/sh
は /usr/bin/dash
のシンボリックリンクになっていますが、dash
は配列が使えないので、シェルスクリプトのファイルの先頭行 (Shebang) には、/usr/bin/bash
を記述します。