Basta substituir \w pela variável de ambiente PWD :
PS1="\[\'if [[ \$? = "0" ]]; then echo '\e[32m\h\e[0m'; else echo '\e[31m\h\e[0m' ; fi\':\$PWD\n\$ "
De qualquer forma, se você se importar com uma pequena dica, eu escreveria algo como:
PS1='\['[ $? = 0 ] && X=2 || X=1; tput setaf $X'\]\h\['tput sgr0'\]:$PWD\n\$ '