在awk中,初始化-测试-递增型的 for
循环与许多编程语言中的标准 for
循环类似,其基本语法结构如下:
for (initialization; condition; increment/decrement) {
# actions to be performed in each iteration
action1
action2
...
}
各部分详解:
- initialization:这是循环开始前执行的一次性初始化操作,通常用于设置循环变量的初始值。
- condition:这是一个表达式,在每次循环迭代之前都会被评估。如果结果为真(非零),则继续执行循环体内的动作;否则,退出循环。
- increment/decrement:在循环体执行完毕后,这部分指定如何更新循环变量的值,可以是递增(如
i++
)、递减(如i--
)或者其他任何修改循环变量的操作。
例如,在awk中使用 for
循环打印从1到5的数字:
awk 'BEGIN {for (i=1; i<=5; i++) print i}'
在这个例子中:
- 初始化:
i=1
设置变量i
的初始值为1。 - 测试条件:
i<=5
检查i
是否小于或等于5。 - 递增:
i++
在每次循环结束后将i
的值加1。
因此,这个循环会依次输出数字1、2、3、4和5,当 i
达到6时,测试条件不再满足,循环终止。