Comment configurer l'invite pour utiliser deux couleurs?

15

Une chose que j'aimais chez Mint était que le terminal montrait généralement deux couleurs: tout de gauche à gauche $serait une couleur, et tout ce qui $serait passé serait une autre.

Existe-t-il un moyen d'avoir cette configuration avec Ubuntu?

TSJNachos117
la source
Pour info j'ai trouvé le fichier /etc/bash.bashrc de Mint 14 sur pastebin . Les toutes premières et toutes dernières lignes doivent être supprimées, sinon vous obtiendrez une erreur. En outre, il peut être judicieux de charger le fichier ~ / .bash_aliases, en supposant qu'un tel fichier existe.
TSJNachos117

Réponses:

21

Exécutez la commande suivante dans un terminal:

gedit ~/.bashrc

Lorsqu'il .bashrcs'ouvre, recherchez et décommentez force_color_prompt=yes(c'est-à-dire, supprimez le hachage, afin qu'il ne ressemble plus à:) #force_color_prompt=yes.

Enregistrez le fichier et ouvrez une nouvelle fenêtre de terminal, et vous devriez déjà voir un changement (l'invite doit être Light Green , qui est définie par 1; 32 ). Vous pouvez ensuite modifier n'importe quelle valeur de couleur que vous aimez; par exemple: 0; 35 = Violet .

Pour modifier les valeurs de couleur, recherchez la section suivante et modifiez les valeurs par défaut avec certains des exemples répertoriés ci-dessous:

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;31m\]\w\[\033[00m\]\$ '
else
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi

Vous pouvez consulter ce nuancier Bash pour une gamme complète de valeurs de couleur, mais voici quelques-unes de base avec lesquelles vous pouvez jouer (notez que "Light" n'est pas ce que vous pourriez penser - cela signifie en fait "bold"): Noir 0; 30 - Gris foncé 1; 30 - Bleu 0; 34 - Bleu clair 1; 34 - Vert 0; 32 - Vert clair 1; 32 - Cyan 0; 36 - Cyan clair 1; 36 - Rouge 0; 31 - Clair Rouge 1; 31 - Violet 0; 35 - Violet clair 1; 35 - Marron 0; 33 - Jaune 1; 33 - Gris clair 0; 37 - Blanc 1; 37

Par exemple, voici la ligne que je l'utilise:

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

ou, ma copine, utilisez:

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;36m\]\u\[\033[01;31m\]@\[\033[01;36m\]\h\[\033[01;33m\]:\[\033[01;31m\]\w\[\033[01;33m\]\# '

N'hésitez pas à expérimenter en définissant votre invite en modifiant la valeur de la variable d'environnement PS1 dans Terminal, comme suit:

export PS1="...your values..."

ou juste

PS1="...your values..."

Voici à quoi ressemble mon terminal:

Terminal

Source: http://ubuntugenius.wordpress.com/2011/07/11/how-to-change-the-command-line-prompt-colour-in-the-ubuntulinux-terminal/

Radu Rădeanu
la source
1
d'où vient la photo de fleur?
NHDaly
3

Modifiez simplement $PS1les fichiers de démarrage du shell avec les appels appropriés à tputafin de définir et d'effacer les attributs de texte. Voir les pages de manuel tput(1)et terminfo(5)pour plus de détails.

export PS1="\[$(tput setaf 2)\][\u@\h \W]\$ \[$(tput sgr0)\]"
Ignacio Vazquez-Abrams
la source
@ RaduRădeanu: "dans les fichiers de démarrage du shell"
Ignacio Vazquez-Abrams
Meilleurs fichiers d'initialisation du shell
Radu Rădeanu
1
Au lieu de $(tput setaf 2)et $(tput sgr0), je recommande d'utiliser directement les séquences d'échappement ANSI: \033[32met \033[m. Le résultat est le même, mais il ne nécessite pas d'appel.
wjandrea
1

Cette chose dont vous parlez s'appelle invite . Il existe de nombreuses options et scripts pour modifier votre invite en utilisant différentes couleurs et en affichant tout type d'informations supplémentaires. Un bon début avec quelques exemples peut être trouvé dans la collection de jamie et IBM a de belles explications pour les débutants. Si vous voulez aller plus en détail, jetez un œil à ce guide complet

binfalse
la source
0

Vous pouvez essayer celui-ci:

PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

(essayez-le d'abord dans un terminal). Ensuite, si vous l'aimez, vous pouvez le mettre quelque part dans votre .bashrcfichier.

gniourf_gniourf
la source