Изменение приглашения

Итак, я пытаюсь создать псевдоним, который позволил бы мне установить текущий каталог в терминале, базовый каталог, который будет отображаться в приглашении. Давайте предположим, что псевдоним называется basedir

Например:

andrepadez@theLookingGlass:~$ cd Shared  
andrepadez@theLookingGlass:~/Shared$ cd development/  
andrepadez@theLookingGlass:~/Shared/development$ cd nodejs/

прямо сейчас, я бы запустил этот псевдоним и я получил бы следующее приглашение:

andrepadez@theLookingGlass:~/Shared/development/nodejs$basedir
andrepadez@theLookingGlass:nodejs$

С этого момента, каждый раз, когда я перехожу в каталог пересылки, я получаю приглашения:

andrepadez@theLookingGlass:nodejs$cd project1
andrepadez@theLookingGlass:nodejs/project1$cd static
andrepadez@theLookingGlass:nodejs/project1/static$cd ..
andrepadez@theLookingGlass:nodejs/project1$ ...

(мне действительно все равно, что произойдет, если я вернусь к папкам за моей базовый каталог)

Есть ли способ создать такую ​​команду?
Я нашел что-то близкое, но он всегда показывает только текущий каталог:

alias basedir="export PS1='\u@\h:\W$ '"

Спасибо

3
задан 22 November 2012 в 23:08

1 ответ

В вашем домашнем каталоге есть скрытый файл (начиная с.) С именем .bashrc. Этот файл запускается всякий раз, когда вы входите в систему, и устанавливает такие параметры, как приглашение (переменная окружения PS1) и alias es. Переменная PS1 устанавливается в нескольких местах, в зависимости от типа используемого вами терминала - измените их все или только тот, который вы используете. Существующая установка PS1 имеет несколько кодов, которые расширяются до таких вещей, как текущий путь к рабочей директории (\w). Отредактируйте файл .bashrc (он у вас есть, поэтому sudo не требуется). Измените \w везде, где `PS1 устанавливается на:

${PWD#$BASE}  

Чтобы установить псевдоним BASE, вы можете добавить его в раздел # some more ls aliases в файле .bashrc. Его значение является просто значением переменной PWD, поэтому

export BASE="$PWD"  

(Кавычки будут обрабатывать странности как пробелы в именах каталогов).

0
ответ дан 22 November 2012 в 23:08

Другие вопросы по тегам:

Похожие вопросы: