Одна из ваших строк читается как:
"[\[\e[0;36;40m\u@\H\]\[\e[0;37;40m]\]\[\e[1;34;40m${ENV}\] \[\e[1;31;40m\w\]\[\e[1;32;40m$(__git_ps1)\] \[\e[0;37;40m${NPM_PACKAGE_INFO}\]\n\[\e[0;37;40m${SYMBOL}\] "
В котором вы заключаете каждый текст внутри \[\]
пар. Если вы удалите новую строку \n
и попробуете PS1:
PS1="[\[\e[0;36;40m\u@\H\]\[\e[0;37;40m]\]\[\e[1;34;40m${ENV}\] \[\e[1;31;40m\w\]\[\e[1;32;40m$(__git_ps1)\] \[\e[0;37;40m${NPM_PACKAGE_INFO}\] n\[\e[0;37;40m${SYMBOL}\] "
Вы обнаружите, что большая часть приглашения будет заменена командами истории, если вы нажмете (стрелку вверх ).
Просто поместите текст, предназначенный для использования межстрочного интервала, вне скобок:
PS1="[\[\e[0;36;40m\]\u@\H \[\e[0;37;40m]\]\[\e[1;34;40m\]${ENV} \[\e[1;31;40m\]\w\[\e[1;32;40m\]$(__git_ps1) \[\e[0;37;40m\]${NPM_PACKAGE_INFO} n\[\e[0;37;40m\]${SYMBOL} "
И попробуйте еще раз.
После того, как это заработает правильно, добавьте новую строку \n
обратно и повторите попытку.
Если проблема не устранена, обновите bash до версии 4.4.18 (, имеющей встроенную версию )или аналогичную.