【发布时间】:2017-01-28 18:39:44
【问题描述】:
我正在使用以下命令来匹配文件中的以下行:
cat file.txt | grep -A 1 'match' > output.txt
这使我可以在以下文件中找到“匹配”后获取该行:
match
random text line 1
match
match
match
random text line 2
match
random text line 3
match
match
random text line 4
match
random text line 5
match
random text line 6
match
random text line 7
match
random text line 8
match
match
random text line 9
但是,我只需要返回 2 个或更多连续“匹配”行之后的行。在这种情况下,输出将是:
random text line 2
random text line 4
random text line 9
我尝试过使用grep -A 2 'match' | grep -A 1 'match' 的组合,但它不起作用,因为它是多余的。只有当有两行连续的行时,我才坚持如何匹配。如果它更有效,我也愿意使用 awk 或 sed 进行匹配。任何方向将不胜感激。
【问题讨论】: