我使用的是awk脚本,它的框架是简单的
awk '
BEGIN {
Variable declaration
}
{
ACTION PART
}
END
{
}' FILE A
文件A是一个巨大的文件。所以我不想遍历整个文件,所以我想做的是,我试图在ACTION PART中保留一些检查,如果检查成功,那么我需要跳过读取文件的其余部分,直接转到END部分。
我的问题是如何根据条件将脚本从ACTION PART重定向到END PART。。我正在寻找某种命令,比如"break"in for loop。你们能分享你们的想法吗。非常感谢。
exit
命令将执行您想要的操作。
从man
页面:
同样END块被合并,并在所有输入耗尽时执行(或当执行退出语句时)。
在终止当前块时使用"exit",但END仍被处理。参见下面的示例。
$ cat test.input
hello
world
one
$ awk 'BEGIN { print "Start-up"} {print "Read:", $1; if ($1 == "world") {exit}} END {print "Phase-out"}' test.input
Start-up
W: hello
W: world
Phase-out