^H neste caso é backspace, AKA dec / hex 8 ou oct 10 ou \b . Tudo o que está fazendo é mover o cursor; Veja este exemplo:
$ printf 'bravoX'
braXo
Nós movemos o cursor de volta 2, mas escrevemos apenas uma letra, a v . Nós não escrevemos sobre o o , então ele permanece. Se você quiser se livrar do resto das letras, você tem que substituí-las por algo, geralmente um caractere de espaço:
$ printf 'bravoX '
braX