for(初期値;終了値;増分) {
処理
}
for(変数 in 配列orデータ並び){
処理
}
また break, continue により、ループの任意の個所でループの外または先頭に制御を移します。
次の例は数列 1〜3 を生成します。
$ awk 'END{for(i=1;i<=3;i++) print i}' /dev/null
1
2
3
/dev/null は常に EOF を返すため、実行直後に END パターンにマッチする
$ awk -F: '{user[$3]=$1}END{for(n in user)print n,user[n]}' /etc/passwd
3 bin
4 uucpa
6 auth
7 cron
8 lp
9 tcb
連想配列を for 文で参照した場合、その順序はハッシュ・テーブルに依存するため
予想できません。