Это может сработать для вас (GNU sed):
sed '/set comments "/!b;:a;/"[^\\"]*\(\\.[^\\"]*\)*"/bb;N;ba;:b;s//" "/' file
При этом игнорируются строки, отличные от тех, которые содержат строку set comments "
. Затем он проверяет, содержит ли строка закрывающие двойные кавычки без кавычек и, если нет, накапливает строки, пока не будет выполнено условие. Наконец, он удаляет все символы между начальными / конечными двойными кавычками и заменяет их одним пробелом.
P.S. Я подозреваю, что OP не имел в виду заменить comments
на comment
, однако это тривиальное изменение второго регулярного выражения и RHS команды подстановки, если она предназначена.