break 语句
break语句用于跳出包裹它的内层循环(while,do-while,for)。注意break语句意味着你在循环里使用它。
下面的例子打印一个月没有销售项目的项目号,比如:从字段2到字段7有0值的。
$ cat break.awk
{
i=2; total=0;
while (i++ <= NF)
if ($i == 0) {
print "Item", $1, "had a month with no item sold"
break;
}
}
$ awk -f break.awk items-sold.txt
Item 102 had a month with no item sold
Item 104 had a month with no item sold
如果你执行下面命令,按ctrl-c停止脚本并跳出它。
$ awk 'BEGIN{while(1) print "forever"}'
上面的awk while循环永远的打印字符串forever,因为条件从不失败。虽然在处理控制里或操作系统应用里一直循环被使用,通常这不是一件好事。
让我们修改循环,使其执行十次,并通过break语句终止。
$ awk 'BEGIN{x=1;while(1){print "Iteration"; if (x == 10) break; x++;}}'
上面命令产生下面输出:
Iteration
Iteration
Iteration
Iteration
Iteration
Iteration
Iteration
Iteration
Iteration
Iteration