将操作与模式分离

  • 本文关键字:分离 模式 操作 awk
  • 更新时间 :
  • 英文 :


考虑:

$ echo line1 | awk '1END{ print "line2"}'
line1
line2

请注意1END之间缺少空间。这是标准,还是我实现awk的一个怪癖?将动作与以下地址分开的语法规则是什么?

您可能正在使用旧版本的awk。在最初的awk语言中,没有必要在同一行用分号分隔规则。添加它是为了与行动中对陈述的处理保持一致。

我发现了这个:

http://www.gnu.org/software/gawk/manual/html_node/Statements_002fLines.html

这适用于我使用GNU Awk 4.0.1:

$ echo line1 | awk '1; END { print "line2" }'
line1
line2

如果我删除;,就会出现语法错误。HTH

最新更新