Это можно сделать, удалив сначала пустые строки и добавив пробел с помощью команды G :
sed '/^$/d;G' text.txt
Edit2: theКоманда выше добавит пустые строки между каждым абзацем, если это не нужно, вы можете сделать:
sed -n '1{/^$/p};{/./,/^$/p}'
Или, если вы не возражаете, что все ведущие пустые строки будут удалены, это может быть записанокак:
sed -n '/./,/^$/p'
, поскольку первое выражение просто оценивает первую строку и печатает ее, если она пуста.
Здесь: -n опция подавляет автоматическую печать пробела, /. /, / ^ $ / определяет диапазон между хотя бы одним символом и ни одним символом (т. е. пустое пространство между символами новой строки) и p указывает напечатать этот диапазон.