Substitua todos os dois pontos por ponto e vírgula. Os colons não são significativos nas sequências de escape para cores.
Parece que tenho muitas fugas de cores, por isso só funciona em alguns avisos - alguém pode por favor corrigir-me?
PS1='\[\e[0:35m[\u@\e[0:33m\h\e[m \e[0:35m\w]\e[m \e[0:33m'git branch 2> /dev/null | grep -e ^* | sed -E s/^\\\*\ \(.+\)$/\(\\\)\ /'\e[m\] \n$ '
Substitua todos os dois pontos por ponto e vírgula. Os colons não são significativos nas sequências de escape para cores.
Tags bash prompt escape-characters