Lea-Linux & Friends:   LinuxFR   GCU-Squad   Zarb.Org   StandBlog
Trucs:Prompt : une invite de commande en couleur
asteroid<l.asteroid chez laposte.net>

Il est utile quand on travaille en console de différencier du premier coup d'œil le résultat d'une commande. Pour ça, on peut customiser le prompt de différentes façons :

  • utilisez un prompt en couleur
  • utilisez le retour à la ligne en fin de prompt
  • combiner les deux :)

Pour ça il vous faut modifier le fichier qui se trouve dans votre répertoire personnel en rajoutant à la fin

Je ne vais pas entrer dans le détail (sauf si on me le demande) car tout le web en parle. Seulement je vais m'attarder sur un point qui est très gênants, la couleur.

Pour la suite il faut juste savoir que :

est le nom de l'utilisateur (root, pikachou, asteroid, ...)
est votre hostname (bench, monPC, station, MIR, ...), jusqu'au premier point
est votre hostname complet
est le répertoire courant (celui dans lequel vous êtes)
est le chemin complet du répertoire courant
permet de revenir à la ligne
est le retour chariot
est la date courante, formatée comme expliqué dans
qui met un $ quand vous n'êtes pas root ou un # si vous l'êtes

et :

séquence d'échappement pour les couleurs
début de texte non imprimable
fin de texte non imprimable

(voir la page sur Bash de Wikipedia)


Par défaut le PS1 est [\u@\h \W]\$ et on le connait en faisant

Lorsque j'ai mis de la couleur dans mon prompt j'ai fait ce qui me donne un prompt rouge du style :

root sur machine dans /home/pikachou
=>

Remarque : [01;31m est de type [couleur de fond;couleur du textem

Le fait de saisir PS1="... dans une console permet de voir les modifs sans pour autant les enregistrer directement. un vous remettra au prompt précédent. Mais malheureusement, lorsque je tapais des commandes qui dépassaient la fin de la ligne ça ré-écrivait sur le prompt au lieu d'aller à la ligne.

L'astuce consiste donc à remplacer par et pareil pour arrêter la couleur le .

Pour conclure :

commence la couleur dans le Bash (ici uniquement le prompt) et  arrête la couleur.

Le code couleurs est facile à trouver sur le web et en français avec un tas de petites explications :)

Voila j'espère que ce petit post aura résolu le problème de certains et donner envie aux autres d'en savoir plus sur le bash et son prompt :-)

Merci a babar et scriptfanix pour mes lacunes en anglais.


Note: certains shell n'acceptent pas \e comme caractère d'échappement (ou le remplacent par \033). Il faut utiliser à la place. Par exemple au lieu de .

Voir aussi http://blog.gnusquad.org/2008/11/22/mettez-de-la-couleur-dans-votre-prompt/

Affichages

Serveur hébergé par Lost-Oasis / IRC hébergé par FreeNode / NS secondaire hébergé par XName
Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons CC-BY-SA