选择两个模式之间的一组线

模式匹配可以与 awk 一起使用,因为它控制了跟随它的动作即 { pattern } { action }。模式匹配的一个很酷的用途是在文件中选择两个模式之间的多个,例如 patternApatternB

$ awk '/patternA/,/patternB/' file

假设我的文件内容如下,我想仅在上述模式之间提取行: -

$ cat file
This is line - 1
This is line - 2
patternA
This is line - 3
This is line - 4
This is line - 5
patternB
This is line - 6

$ awk '/patternA/,/patternB/' file
patternA
This is line - 3
This is line - 4
This is line - 5
patternB

除了打印匹配的行之外,上述命令不执行任何特定的 { action },但是行子集内的任何特定动作都可以应用动作块({})。