Colorer le prompt pour distinguer les serveurs

Je travaille régulièrement avec plusieurs fenêtres SSH ouvertes, chacune correspondant à un serveur différent.

Pour faciliter la distinction entre les différents serveurs et limiter les risques d'erreur, j'ai mis en place la solution qui consiste à colorer une partie du terminal.

Mise en forme

Syntaxe originale :

\u@\h:\w\$
  •  \u : nom de l'utilisateur
  • \h : nom de l’hôte
  • \w : arborescence
  • \$ : affiche # si root, $ sinon
  • [\t] : heure locale

Voici un exemple de ce que j'utilise :

Pour tester cet affichage, exécutez :

export PS1="\e[42m\u@\h\e[m:\w> "

Il est possible de rajouter un retour à la ligne :

export PS1="\e[42m\u@\h:\e[m\w>\n> "

Voir même un saut de ligne :

export PS1="\n\e[42m\u@\h:\e[m\w>\n> "

Des couleurs

Vous pouvez modifier la couleur du fond en encadrant votre texte avec \e[41m et \e[m :

  • rouge : export PS1="\e[41m\u@\h:\e[m\w> "
  • vert : export PS1="\e[0;30m\e[42m\u@\h:\e[m\w> "
  • orange : export PS1="\e[0;30m\e[43m\u@\h:\e[m\w> "
  • bleu : export PS1="\e[44m\u@\h:\e[m\w> "
  • violet : export PS1="\e[0;30m\e[45m\u@\h:\e[m\w> "

Ou modifier la couleur du texte en encadrant votre texte avec : \e[0;32m et \e[m :

  • vert : export PS1="\e[0;32m\u@\h:\e[m\w> "
  • brun : export PS1="\e[0;33m\u@\h:\e[m\w> "
  • bleu : export PS1="\e[1;34m\u@\h:\e[m\w> "
  • rouge : export PS1="\e[1;31m\u@\h:\e[m\w> "
  • violet : export PS1="\e[1;35m\u@\h:\e[m\w> "
  • cyan : export PS1="\e[0;36m\u@\h:\e[m\w> "

Le 0 signifie clair, et peut être remplacé par 1 pour foncé.

Notez que si vous utilisez couleur de fond + couleur de texte, il n'y a qu'un \e[m de fermeture.

Usage définitif

Pour mettre en place définitivement sur votre serveur, ajoutez la ligne à la fin de votre fichier bashrc :

nano ~/.bashrc

Code couleur

Couleur du fond

  • 40 : noir
  • 41 : rouge
  • 42 : vert
  • 43 : orange
  • 44 : bleu
  • 45 : violet
  • 46 : bleu clair
  • 47 : gris

Couleur écriture (0 : clair, 1 : sombre)

  • 0;30 : noir
  • 0;34 : bleu
  • 0;32 : vert
  • 0;36 : bleu clair
  • 0;31 : rouge
  • 0;35 : violet
  • 0;33 : brun

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *