特定のグループからエントリを削除するシェル スクリプトを作成しています。例: ファイル名は dest.xml です
<domain id="1" group_name="group1">
<node id="ABC">
<node id="PQR">
<node id="XYZ">
</domain>
<domain id="2" group_name="group2">
<node id="PQR">
<node id="XYZ">
</domain>
<domain id="3" group_name="group3">
<node id="ABC">
<node id="PQR">
</domain>
group_name="group1" から node id="PQR" を持つ上記のファイル (ファイル名は dest.xml) からエントリを削除したい (group2 および group3 から削除されるべきではありません)。ファイルを順番に読み取り、特定のグループから削除することで実行できます。ただし、ファイルが大きすぎる場合 (> 10k 行)、時間がかかります。
これに簡単な方法はありますか?