Novas linhas não nomeadas nas linhas de comando são tratadas como espaços; é por isso que você pode dizer coisas como
command1 && command2
Bem, às vezes, novas linhas não nomeadas são tratadas como ponto e vírgula. Mas quando você diz
echo 'cat ${log}'
todas as novas linhas no arquivo de log são transformadas em espaços. Você poderia consertar isso dizendo
echo "'cat ${log}'"
mas por que não dizer apenas
cat ${log}
?