zsh echo se comporta da maneira padrão, como bash no modo UNIX. Ou seja, ele expande \b para o caractere ASCII BS, conforme exigido pela especificação UNIX.
Não use echo para exibir strings arbitrárias, use printf :
printf '%s\n' "$1"
print -r -- "$1" também funciona, mas é ksh / zsh específico.
echo -E - "$1" trabalha com zsh e acredito em alguns BSDs.
cat << EOF
$1
EOF
funciona em qualquer shell parecido com o Bourne, mesmo em algumas décadas, quando não havia nenhum comando printf , mas gerou um novo processo, e não é necessário atualmente, já que agora temos printf em todos os lugares.
E, a propósito, você precisa escapar das barras invertidas em uma linha de comando do shell, já que é especial para o shell (cada shell, mas rc ), então:
$ foo '\foo\bar'
foo \foo\bar passaria a string "\foo\bar" para foo , que não pode reinventar a barra invertida perdida de volta.