次の形式のデータがあります。
#@ <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.
ここで、#@ <...> に「wxyz」を含む行とその次の行の 2 行を削除します。私が望む出力例は次のとおりです。
#@ <id_123>
A line written after this one also.
#@ <id_yex_9>
Another line.
同じことを達成できるLinuxコマンドがありますか、それともPythonで同じことを達成するための効率的な方法がありますか。grep、sedなどを使用して1行を選択的に削除できることは知っていますが、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.