我有一个看起来像这样的文件:
Guest-List 1
All present
Guest-list 2
All present
Guest-List 3
Guest-list 4
All present
Guest-list 5
我想删除包含“所有存在”的行及其标题(“所有存在”上方的行)。所需的输出将是:
Guest-List 3
Guest-list 5
我有兴趣使用 sed 来实现它。因为我是菜鸟,其他可能没有 sed 的解决方案也将不胜感激(回答时请提供详细解释,以便我学习):)
(我知道可以删除与正则表达式匹配的行,并可以将其上方的行存储到将其发送到保持缓冲区,如下所示: sed '/^.*present$/d; h' ... 然后是“g”命令会将保持缓冲区复制回模式空间......但我如何告诉 sed 也删除它?)
提前致谢!