Почему цвет пользователя @ hostname изменяется после поиска файла?

Я заметил, что всякий раз, когда я получаю файл, цвет пользователя @ hostname меняется:

enter image description here

Почему?

3
задан 10 June 2018 в 07:23

3 ответа

Потому что он загружает пользовательские настройки, указанные в вашем файле /etc/bash.bashrc. И настройки подсказок могут отличаться от вашего фактического контекста терминала. Для получения более подробной информации взгляните на другие ответы. :)

6
ответ дан 10 June 2018 в 07:23

Это потому, что /etc/bash.bashrc устанавливает новое значение для вашего приглашения:

# set a fancy prompt (non-color, overwrite the one in /etc/profile)
# but only if not SUDOing and have SUDO_PS1 set; then assume smart user.
if ! [ -n "${SUDO_USER}" -a -n "${SUDO_PS1}" ]; then
  PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
6
ответ дан 10 June 2018 в 07:23

Внешний вид подсказки (вещь user@host) контролируется переменной PS1. Возможно, у вас есть что-то вроде

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

в вашем файле ~/.bashrc. Странные \[\033[00m\] и т. Д. Символы используются для раскрашивания подсказки. \u - это имя пользователя (h4ck3r), \h - имя хоста (h4ck3rE780) и \w - текущий рабочий каталог (~, который обозначает ваш каталог HOME).

Когда вы вводите /etc/bash.bashrc, тогда переменная PS1 получает другое значение (без цветов), и вы получаете другое приглашение. Это довольно просто.

Попробуйте

PS1='user=\u, host=\h, directory=\w  

в окне терминала и посмотрите результат. Sourcing /etc/bash.bashrc не делает ничего другого (кроме фактических параметров).

в окне терминала и посмотрите результат. Sourcing /etc/bash.bashrc не делает ничего другого (кроме фактических параметров).

6
ответ дан 10 June 2018 в 07:23

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

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