12

我想知道如何在 awk 中使用多行注释。到目前为止,我一直在使用 # 来注释一行。有人可以指导我解决这个问题。谢谢你。

4

1 回答 1

18

AWK 中没有多行注释,但如果需要,您可以伪造它。这是一种至少在 GNU AWK ( gawk) 中有效的技术:

#!/usr/bin/awk -f
0 {
    You can use
     0 to cause
     a block to
     not execute
     or be parsed
}

{
    print $2, $1, $3
    if (0) {
        You can use if (0)
        in a similar manner
        inside a block
    }
    sum += $4
}

0 && /pattern/ {    # prepend "0 &&" to other conditions to turn off a block
    print
}

很高兴能够在调试期间使用多行注释来注释掉代码段。我不一定会将此技术用于文档,因为它可能无法保证非代码文本不会被解析为语法错误。

它似乎也适用于mawk.

于 2012-07-20T11:33:37.373 回答