2

Я хотел бы использовать переменную \w в .bashrc , но я хочу, чтобы в приглашении была указана текущая конечная директория. Что-то вроде этого:

/usr/local/<strong>bin</strong>

Как я могу это сделать?

2 ответа2

3
PS1='${PWD%/*}/\[\e[33;1m\]${PWD##*/}\[\e[0m\] \$:  '

используйте bash'ism для манипулирования $ PWD для последнего компонента. COlorize и добавьте еще больше мета для выхода из bash.

Подставим разные цифры на 33 для разных цветов.

лично я ненавижу путь в подсказке, он перемещается по экрану. Я предпочитаю в заголовке.

PROMPT_COMMAND='echo -ne "\e]0;$USER@${HOSTNAME%%.*}: $(pwd -P)\a"'

ИЗМЕНИТЬ изменил кавычки на PS1 на одинарные кавычки, так как его нужно оценивать каждый раз, когда он печатается, а не только один раз, когда он читается. Спасибо @ Гордон

0

Используйте что-то вроде $(dirname \w)/\[$(tput bold)\]$(basename \w)\[$(tput sgr0)\] в $PS1 . Не забывайте одинарные кавычки.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .