Unixシェル for, foreach

for または foreach コマンドは、処理の流れ(フロー)を制御する構文です。特定のアクションを複数回繰り返して実行させることができます。

sh, bash のfor文

for variable do commands done
for variable in values do commands done
for variable in `cmd` do commands done
variable

変数を指定する。

value

変数に代入する値のリストを空白で区切って指定する。

cmd

値のリストを出力するコマンドを指定する。

commands

繰り返し実行するコマンドを指定する。 複数のコマンドをセミコロン( ; ) 又は改行で区切って指定することができる。

コマンドが実行されるたびに、変数は in のリストから次に得られる値に設定されます。in 値 を省略すると、for コマンドは、設定された各定位値パラメタに対して、do を 1 回実行します ( 後述の「パラメタ置換」を参照 ) 。リストの値がなくなると、実行は終了します。

for para do echo $para ; done
for msgsize in 4 8 12 16
do
  echo $msgsize
done
for i in `seq -w 3`
do
echo $i
done