我有以下格式的数据:
#@ <id_wxyz_1>
A line written after this.
#@ <id_123>
A line written after this one also.
#@ <id_wxyz_2>
One more line.
#@ <id_yex_9>
Another line.
现在我想删除 2 行:#@ <...> 中包含“wxyz”的行及其下一行。我想要的示例输出是:
#@ <id_123>
A line written after this one also.
#@ <id_yex_9>
Another line.
是否有一些 linux 命令也可以实现相同的功能,或者在 python 中是否有一些有效的方法来实现相同的功能。我知道我可以使用 grep、sed 等有选择地删除一行。但是是否可以使用 linux 命令有选择地删除 2 个连续的行
编辑:给出的答案非常好,但它们不适用于以下形式的输入:
#@ <id_wxyz_1>
A line written after this.
#@ <id_wxyz_2>
A line written after this.
#@ <id_wxyz_3>
A line written after this.
#@ <id_wxyz_4>
A line written after this.
#@ <id_wxyzadded5>
A line written after this.
对于上述输入,我应该没有输出行。
再次编辑:我拥有的另一组输入是:
#@ <id_wxyz0>
Line 1.
#@ <id_wxyz1>
line 2.
#@ <id_wxyz2>
line 3.
#@ <id_wxyz3>
line 4.
#@ <id_6>
line 5.
输出应该是
#@ <id_6>
line 5.