Essas partes do PS1 têm comprimento 0, porque definem a formatação (usando seqüências de escape ANSI), mas não produzem nenhuma outra saída:
\e[1;34m
\e[m
$(tput sgr0)
Além disso:
- Você pode retirar
$(tput sgr0)porque\e[mfaz exatamente a mesma coisa. - Coloque o PS1 entre aspas simples, para que as variáveis e comandos nele sejam dinâmicos, não estáticos. (Embora não seja importante nesta situação.)
Então você está procurando este comando:
export PS1='\[\e[1;34m\]\u@\H : \[\e[m\]'