How can I replace multiple empty lines with a single empty line in bash?
bash, regex
Solution
For BSD-derived systems (including GNU):
You just need `cat` with the `-s` option which causes it to remove repeated empty lines from its output:
cat -s
From man page: `-s --squeeze-blank: suppress repeated empty output lines.`
Problem
I have a file that contains: ``` something something else something else again ``` I need a bash command, sed/grep w.e that will produce the following output ``` something something else something else again ``` In other words, I need to replace multiple blank lines with just a single blank line. grep/sed are line based. I've never found a BASH solution that would work on multi-line regex patterns.