Это решение может работать:
sed '/^<!--/,/^-->/{/^<!--/{h;d};H;/^-->/{x;/^<!--\n# Translator(s):\n#\(\n# [^<]*<email[0-9]\+>\)\+\n#\n-->$/!p};d}' file
Альтернатива (возможно, лучшее решение?):
sed '/^<!--/{:a;N;/^-->/M!ba;/^<!--\n# Translator(s):\n#\(\n# \w\+ <[^>]\+>\)+\n#\n-->/d}' file
Это собирает строки, которые начинаются с <!--
и заканчиваются -->
, затем сопоставления с образцом в коллекции, т. Е. Вторая строка # Translator(s):
, третья строка #
, четвертая и, возможно, больше строк следуют # username <email address>
, предпоследняя строка #
, а последняя строка -->
. Если сопоставление выполнено, вся коллекция удаляется, иначе она печатается как обычно.