J'ai remarqué que chaque fois que je source un fichier, la couleur de l'utilisateur @ nomhôte change:
Pourquoi?
Parce qu'il charge les paramètres utilisateur spécifiés dans votre fichier /etc/bash.bashrc
. Et les paramètres de l’invite peuvent être différents de votre contexte terminal actuel. Pour plus de détails, jetez un coup d'œil aux autres réponses votées. :)
En effet, /etc/bash.bashrc définit une nouvelle valeur pour votre invite:
# 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
L'apparition de Invite (la chose user@Host
) est contrôlée par la variable PS1
. Vous avez probablement quelque chose comme
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
dans votre fichier ~/.bashrc
. Les étranges caractères \[\033[00m\]
etc. sont utilisés pour colorer l'invite. \u
est le nom d'utilisateur (h4ck3r
), \h
est le nom d'hôte (h4ck3rE780
) et \w
est le répertoire de travail actuel (~
, ce qui indique votre répertoire HOME).
Lorsque vous spécifiez /etc/bash.bashrc
, la variable PS1
est définie sur une autre valeur (sans couleur) et vous obtenez une invite différente. C'est assez simple.
Essayer
PS1='user=\u, Host=\h, directory=\w $'
dans une fenêtre de terminal et voir le résultat. Sourcing /etc/bash.bashrc
ne fait rien de différent (à part les paramètres réels).