我尝试打印两个不同模式(包括模式)之间的行,这可能会在文件中多次出现。除了开始模式-结束模式-节奏之外,第二模式也可以出现。
例子:
-文件:
XYZ
XYY
BBB
XYX
AAA
AAB
BBB
XYW
AAA
AAC
AAD
BBB
-输出应该是这样的:
AAA
AAB
BBB
AAA
AAC
AAD
BBB
我已经尝试过类似的事情awk '/AAA/{a=1}/BBB/{print;a=0}a'
。
谢谢。
答案1
如果必须awk
这样做:
awk -- '/AAA/,/BBB/{print}'
但它似乎sed
也非常适合您的情况。因此,类似地只需这样做:
sed -ne '/AAA/,/BBB/p'
在这两个命令中,使用逗号表示您要考虑从(并包括)与第一个模式匹配的行开始,直到(并包括)与第二个模式匹配的行的所有行。