bash может обрабатывать это в цикле while read
(echo -e 'banana\n\n'; sleep 2; echo 'cheese') |
while IFS= read -r line; do
[[ $line ]] && echo "$(date "+%F %T") line"
done
2014-05-14 06:34:06 banana
2014-05-14 06:34:08 cheese
Вы можете удалять строки только с пробелами с затруднительным расширением параметра: удалить все ведущие пробелы и посмотреть, не ли ли пустая строка :
shopt -s extglob
(echo -e ' banana\n\t\n'; sleep 2; echo 'cheese') |
while IFS= read -r line; do
[[ "${line/#+([[:blank:]])/}" ]] && echo "$(date "+%F %T") $line"
done