Сжатие пробела легче всего выполнить, отправив вывод в tr:
... | tr -s ' '
В этом случае это (вероятно) не будет работать, потому что первые пробелы, скорее всего, являются вкладками, поэтому вы можете сделать:
... | tr '\t' ' ' | tr -s ' '
или просто сделайте все это в perl:
perl -00 -pe 's/\s*\\\n\s*/ /sg'
Это сжимает все пробелы вокруг продолжения строки в один пробел, поэтому лишние пробелы вдали от новой строки не будут изменены, а пустые строки после символа продолжения будут использованы, что, вероятно, нежелательно. Кроме того, режим slurp не всегда подходит, поэтому, возможно, вы предпочтете:
perl -wpe 's/^\s*// if $v; $v = s/\s*\\\n/ /g'