Le blog de Genma
Vous êtes ici : Accueil » Informatique » GNU/Linux, Logiciels Libres » Prompt coloré pour son shell

Prompt coloré pour son shell

D 5 septembre 2016     H 09:00     A Genma     C 1 messages   Flattr cet article Logo Tipee

TAGS : Planet Libre

J’utilise plusieurs connexions en même temps à différentes machines en même temps via ssh, parfois avec le même nom d’utilisateur et il est difficile de s’y retrouver. Certes, j’ai à chaque fois genma@nom_de_la_machine dans le prompt mais je cherchais à avoir quelque chose de plus visuel rapidement que d’avoir à lire le nom de la machine (car il m’est arrivé de ne pas taper la bonne commande pour la bonne machine...)

D’où l’idée d’avoir un prompt en couleur selon l’utilisateur et /ou la machine. Attention, ce ne sera que le prompt, pas les commandes en elle-mêmes. A la fin du fichier .bashrc, on ajoute les lignes suivantes :

Couleur bleu

export PS1=“\[\033[38;5;25m\]\u@\[$(tput sgr0)\]\[\033[38;5;24m\]\h:\w\\$\[$(tput sgr0)\]\[\033[38;5;15m\] \[$(tput sgr0)\]”

Donnera un genma@nomachine : $

où ~ est le dossier courant (ici le /home/genma)

Couleur verte

export PS1=“\[\033[38;5;28m\]\u@\h:\w\\$\[$(tput sgr0)\]\[\033[38;5;15m\] \[$(tput sgr0)\]”

Couleur rouge (pour root par exemple)

export PS1=“\[\033[38;5;160m\]\u@\h:\w\\$\[$(tput sgr0)\]\[\033[38;5;15m\] \[$(tput sgr0)\]”

On peut ajouter d’autres informations comme la date et l’heure, etc. (principe du prompt)

Pour avoir d’autres couleurs et générer sa ligne qui va bien pour le fichier .bashrc (car c’est une syntaxe pas compréhensible par l’humain que je suis) je vous recommande le site http://bashrcgenerator.com/.

Depuis que j’ai fait ça, j’ai associé une couleur par machine et par utilisateur et je ne me trompe plus.

 Les Tags - mots clefs de ce article

 Vous aimez cet article? Soutenez le blog et partagez-le ;-)

Logo Tipee Flattr icon  Facebook icon  Twitter icon  Diapora icon   Licence Creative Commons

1 Messages

  • Perso j’ai décommenté la ligne
    force_color_prompt=yes

    et j’ai commenté la variable PS1 qui va avec

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

    Pour le remplacer par mon petit prompt perso :

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

    Du coup pour la petite explication :
    ${debian_chroot:+($debian_chroot) ça change pas
    \[\033[00m\]\[\033[34m\]\u ça met le user en bleu foncé
    \[\033[00m\]@ ça garde le @ en blanc
    \[\033[01;32m\]\h ça met l’host en vert clair (pas fluo, faut pas déconner quand même)
    \[\033[00m\]: les 2 points ( :) toujours en blanc
    \[\033[01;35m\]\w le répertoire courant en violet clair
    \n un petit saut de ligne parce que.. parce que ! (en vrai sur les petits écrans ça laisse toute la ligne pour la commande quand on est dans /toto/titi/tata/tutu/monDossierSecret)
    /anticonstitutionnellement)
    \[\033[01;31m\]> un espace et un prompt avec un caractère supérieur (j’aime bien les prompt des interpréteurs genre python, etc..)
    \[\033[34m\] et enfin la commande en bleu clair
    ça donne quelque chose comme ça : https://framapic.org/dmrq7IgNzYx9/h...

    J’avais une variante avec des tabulations pour afficher l’heure/date en fin de première ligne mais en fonction de la taille du terminal ça pouvait arriver sur la deuxième ligne et c’était tout moche.


Un message, un commentaire ?
modération a priori

Ce forum est modéré a priori : votre contribution n’apparaîtra qu’après avoir été validée par un administrateur du site.

Qui êtes-vous ?
Votre message

Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Conférences

Médiathèques vous recherchez un conférencier sur l’éducation populaire et l’hygiène numérique? Jetez un coup d’oeil à mon CV

Date des prochaines conférences?
Cliquer ici

Rechercher sur le blog

Liens

Logo Flattr Logo Gmail Logo Twitter
Logo RSS Logo Linkedin Logo GitHub
Logo Gitlab
Logo Diaspora

Soutenir ce blog?

Logo Tipee Logo Liberapay

Licence

Licence Creative Commons

Derniers articles

1.  Redirection pages perso free vers nom de domaine

2.  Sekai Ninja Sen Jiraiya aka Giraya

3.  La Validation des acquis de l’expérience

4.  Le podcast Cozy Corner

5.  Critique du livre Sécurité informatique Principes et méthodes à l’usage des DSI, RSSI et administrateurs Eyrolles

6.  Que dirait l’enfant (l’adulte) au vous du futur (du passé) ?

7.  Pourquoi tant de billets impersonnels ?

8.  What can I do for Mozilla ?

9.  Réflexions sur l’autocensure

10.  Conférence Hygiène numérique


Date de mise à jour :

Le 23 février 2017