1.控制函数:next,getline,exit。
next: 该行的action运行到next就停止,读取下一行。
getline:1.没有"<"或“|”的情况下,读取下一行,如果没有把下一行传递给变量(形式:getline tmp),则会改变NR,FNR,$0这些内置变量。
2.有“<”或“|”的情况下,读取另外的文件,如果没有把读取的文件传递给变量(形式:getline tmp<"data.txt"),则会改变NR,FNR,$0这些内置变量。
exit: 执行到该命令后,退出awk。
2.案例
next:
getline:
没有tmp
有tmp
注解:第一个例子中,没有将getline 传递给其他变量,这时候的$0,FNR,NR是属于下一行的。
第二个例子中,将getline传递给tmp变量,这时候的$0还是属于当前行,但是已经读取了下一行,所以NR,FNR属于下一行的。
“<”:没有tmp
注释:第一个$0属于test2,第二个$0属于test
“<”:有tmp
注释:第一个$0属于test2,第二个$0也属于test2,这是由于test的内容已经由b来掌握。
eixt:
来源:https://www.cnblogs.com/timeisbiggestboss/p/8252459.html