Não há problema com o \n
. Este é mais uma vez o antigo problema de tamanho da seqüência de escape: \e[0m
e similar não contribuem para o tamanho real do prompt, então você deve colocá-los em \[
.. \]
para indicar isso ao intérprete:
PS1="\[\e[0;36m\]\h\[\e[m\] \[\e[0;33m\]\w/\[\e[m\]\n \[\e[0;31m\]\$ →\[\e[m\] "