Por padrão, a versão GNU padrão de echo entregue com o Ubuntu não reconhece as seqüências de escape. Use o sinalizador -e para ativar isso.
Compare as saídas:
serg@ubuntu(bash):[/home/xieerqi]$ echo "new\nline"
new\nline
serg@ubuntu(bash):[/home/xieerqi]$ echo -e "new\nline"
new
line
Em geral, echo em scripts não é recomendado. Por exemplo, mksh versão de echo permite interpretar as fugas.
Para portabilidade de scripts, use a função printf .
serg@ubuntu(bash):[/home/xieerqi]$ printf "new\nline\n"
new
line