【发布时间】:2018-06-20 21:02:06
【问题描述】:
作为初学者,我正在尝试解决以下问题(bash 或 python 脚本):
文件(~50G!):
marker
xxx
xxx
xxx
pattern
marker
xxx
xxx
xxx
marker
xxx
xxx
xxx
pattern
我想找到一种方法来删除两个markers + 第一个marker 之间的行,但不是marker 的最后一次出现如果没有pattern 可以在整个行中找到。
想要的结果:
marker
xxx
xxx
xxx
pattern
[empty!]
marker
xxx
xxx
xxx
pattern
我尝试用 regex 或 awk 来解决它(这是一个非常害羞的开始)
awk '/marker/{f=1} f; /marker/{f=1}' file
但我很难理解如何在一个可以解决整个问题的函数中实现它。如果有人能帮助我,我会非常高兴!
干杯
【问题讨论】:
-
你想要
empty行吗? -
@user3483203 没有!感谢阅读!
标签: python bash design-patterns marker lines