Что лучшая практика настройки является подсказкой Bash (иначе переменная среды PS1)?

Я пытаюсь добавить имя ответвления Мерзавца к своей подсказке Bash путем изменения PS1 переменная как это:

PS1=`echo "$PS1" | sed 's/\\\\\$ $/\$(__git_ps1)\\\\\$ /'`

И если я понимаю правильно, не рекомендуется обновить ~/.bashrc для персонализации целей. Все статьи, которые я нашел, предлагают обновить также .profile или .bash_profile в таких целях. Таким образом, я ищу идеальное место для помещения этой строки в.

Это места, которые я попробовал до сих пор:

  • .profile: не полученный gnome-terminal
  • .bash_profile: не полученный gnome-terminal
  • .bash_login: не полученный gnome-terminal
  • .bash_aliases: работы, но я не думаю PS1 имеет какое-либо отношение к псевдонимам

Я использую Рабочий стол Ubuntu, и я работаю в gnome-terminal или byobu, таким образом, я должен найти файл, который получен, когда я запускаю bash в X средах. Затем я заглянул .bashrc для других файлов это получает после присвоения значения к PS1. Существуют .bash_aliases и /usr/share/bash-completion/bash_completion который я не думаю, являются надлежащими с этой целью.

Каков другой выбор? И какова лучшая практика настройки подсказки Bash?

2
задан 12 March 2015 в 22:21

2 ответа

Согласно следующему ПРАКТИЧЕСКОМУ РУКОВОДСТВУ, Ваш .bashrc на самом деле лучшее место для тонкой настройки $PS1:

строка PS1 должна быть установлена в .bashrc. это вызвано тем, что неинтерактивные удары стараются изо всех сил сбрасывать PS1. страница справочника удара говорит, как присутствие или отсутствие PS1 являются хорошим способом знать, является ли каждый в интерактивном по сравнению с неинтерактивным (т.е. сценарий) сессией удара.

[...]

поэтому нужно подчеркнуть, что PS1=..blah.. должен быть в .bashrc а не .profile.

Источник: http://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/setps.html

2
ответ дан 20 November 2019 в 00:13

Я соглашаюсь с @sylvain-pineau, что это должно быть расположено в .bashrc.

Im с помощью быстрого мерзавцем сценария оболочки, который я разветвил на GitHub. Это работает очень хорошо с мерзавцем, svn и hg. Это показывает Вам, в каком ответвлении Вы находитесь, какие файлы Вы имеете, который является новым, какие файлы, который изменяется (в различных цветах) и состояние от Вашей последней команды удара.

можно загрузить его как это:

wget https://raw.githubusercontent.com/stalet/git-prompt/master/git-prompt.sh
chmod +x git-prompt.sh

Тогда в .bashrc я использую тест, чтобы видеть, доступен ли мой быстрый мерзавцем сценарий, и затем получите его:

[[ -s ~/config/git-prompt.sh ]] && source ~/config/git-prompt.sh

Правовая оговорка, я - разработчик к быстрому мерзавцем проекту GitHub.

0
ответ дан 20 November 2019 в 00:13

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

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