Você não mostra o que faz com $r , mas aposto que é
echo $r
Você precisa colocar a variável entre aspas duplas para preservar as novas linhas
echo "$r"
Sem aspas, a variável está sujeita a divisão de palavras , em que qualquer sequência de espaços em branco 1 (incluindo novas linhas) são substituídos por um único espaço 1
1 : por padrão, depende do conteúdo de $IFS (padrão: espaço, tabulação, nova linha)