См. справочную страницу bash(1)
в разделе «Встроенные команды». Параметр -e
необходим, чтобы echo
интерпретировал escape-символы.
То, что Bash показывает в подсказке, полностью зависит от того, что установлено в PS1
. Эскейп-подсказка\w
(или\W
)покажет текущий каталог (или его последнюю часть ), но с домашним каталогом, показанным как ~
. Использование $PWD
покажет неизмененный рабочий каталог. (Оба показывают, что он используется в команде cd
, это имеет значение, если вы cd
переходите в каталог через символическую ссылку.)
После поиска в Интернете оказалось, что моя переменная $PS1 установлена правильно. Я предполагаю, что это проблема WSL или проблема Windows Terminal.