Экранирование персонажей в PS1 - PullRequest
3 голосов
/ 23 ноября 2010

Я начинаю новый сеанс работы с bash, используя такую ​​команду:exec bash --init-file <(cat /etc/profile ~/.bashrc $ANOTHER_SCRIPT) -iЯ также хотел бы изменить приглашение новой сессии, не добавляя еще один файл инициализации ... Я подозреваю, что моя лучшая ставка выглядит примерно так:
exec bash --init-file <(cat /etc/profile ~/.bashrc $ANOTHER_SCRIPT; echo "PS1='[TEST] '$PS1") -i
Я думаю, что мои проблемы касаются экранированных символов ..... но я совершенно не понимаю, как продолжать решать эту проблему, добавляя мой ярлык к приглашению.

Любые мысли очень ценятся,

Эндрю

Ответы [ 2 ]

3 голосов
/ 23 ноября 2010

Это должно работать:

exec bash --init-file <(cat /etc/profile ~/.bashrc $ANOTHER_SCRIPT; echo 'PS1="[TEST] $PS1"') -i
1 голос
/ 23 ноября 2010

PS1="[TEST] $PS1"

Вы не можете поместить это в ту же строку, что и подстановка процесса <(cat ...), так как она ожидает только файлы, но скорее внутри вашего ~/.bashrc файла

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...