Как (и где) можно изменить шаблон 'user @ host $:' в gnome-terminal?

Когда я запускаю терминал в Ubuntu, я вижу:

ilya@HOST:~$

Мне нужно добавить к этому метку времени, что-то вроде:

2011-10-09T09:32:00 ilya@HOST:~$

Как я могу настроить это? 114]

20
задан 24 October 2012 в 04:31

5 ответов

Есть хорошая статья о том, как изменить бэш-интерфейс и что означают все специальные символы (например, \h). В ней также есть ссылка на то, как изменить цвета в подсказке.

Что касается применения изменений в вашем .bashrc, просто запустите исходник ~/.bashrc

9
ответ дан 24 October 2012 в 04:31

Положите это в конец вашего ~/.bashrc

PS1="\D{%F}T\t $PS1"

Затем перезапустите ваш терминал. Для пояснений читайте страницу руководства bash, ищите ^PROMPTING

(извините, в первой версии этого ответа ошибочно сообщалось об одиночных кавычках вместо double)

18
ответ дан 24 October 2012 в 04:31

Я считаю, что отличная настройка - иметь 3 цветные группы:

  • имя пользователя и имя хоста
  • текущее местоположение
  • текущая ветка git

плюс новая строка, чтобы вы вернулись на левую сторону!

т.е.
enter image description here

Вы можете получить все это, имея следующее в вашем .bashrc файле в вашем домашнем каталоге.
Работает для Unix и OS X

parse_git_branch () {
  git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}
PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;33m\]$(parse_git_branch)\[\033[00m\]\n\$ '

Если вы хотите, чтобы это плюс ваши временные метки в четырех цветах, вы можете иметь:

$ PS1='\033[01;31m\] \D{%F} \t \[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;33m\]$(parse_git_branch)\[\033[00m\]\n\$ '

как в:

enter image description here

, хотя лично я думаю, что теперь я выберу:

parse_git_branch () {
  git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/'
}
PS1='\033[01;31m\]\t\033[00m\]:'
PS1=$PS1'\[\033[01;32m\]\u@\h\[\033[00m\]:'
PS1=$PS1'\[\033[01;34m\]\w\033[00m\]:\033[01;33m\]$(parse_git_branch)\[\033[00m\]\n\$ '
PS2='\[\033[01;36m\]>'

для

enter image description here

3
ответ дан 24 October 2012 в 04:31

Чтобы применить изменение типа ~/.bashrc внутри работающего терминала:

exec bash

Перезагрузка терминала не требуется. Это полезно для каждого изменения (в терминальном окружении)

3
ответ дан 24 October 2012 в 04:31

Чтобы сделать это временно, но немедленно/на лету, например, чтобы у вас была некоторая конфиденциальность при создании скринкаста, вы можете сделать следующее

echo PS1='$\ ' > /tmp/ps1 && source /tmp/ps1 && rm /tmp/ps1

Переменная PS1 задает формат, исходник применяет эту установку, читая из файла.

Теперь командная строка выглядит следующим образом:

$ 
0
ответ дан 24 October 2012 в 04:31

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

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