Nous négligeons trop souvent le prompt dans nos shell linux, qu’il soit bash, sh ou autre. Or ces quelques caractères nous suivent à longueur de commandes et de lignes. Et lorsque nous avons plusieurs shells ouverts en même temps, du fait de plusieurs serveurs à gérer et/ou à gérer sous plusieurs comptes d’utilisateurs différents, il est difficile de s’y retrouver. Heureusement, il y a des solutions !
Jouer avec les codes couleurs
Ce n’est pas parce que nous allons mettre un peu de couleur, que c’est gadget, ou geek. Non ! Quand il faut gérer plusieurs serveurs, choisir une couleur de fond différente par serveur peut être un excellent moyen de reconnaître ses petits d’un coup d’œil (et donc pour éviter bon nombre d’erreur). Passé 15 serveurs, cela commence à devenir difficile de distinguer 15 serveurs, donc 15 couleurs différentes. Mais il est toujours possible d’utiliser des couleurs différentes pour chaque type de rôle : frontaux WEB, SQL, mail, serveurs de fichiers, DNS… à vous de faire preuve d’imagination.
Le prompt ultime
De la couleur, on peut en mettre aussi dans le prompt, par exemple pour signaler que vous êtes sous l’utilisateur ROOT : le mettre en rouge est un excellent moyen de faire attention à ce que vous allez taper en tant que “root”.
Parmi les informations à afficher qui me semble indispensable, je citerais : le nom du serveur, le nom d’utilisateur et le chemin actuel. Et j’ajouterais deux autres informations, utiles lorsque que l’on veut se retrouver dans tout son historique de commandes : le numéro de la commande, et l’heure de la validation de la commande (en cas de plusieurs shells ouverts, il peut être pratique de savoir laquelle a été exécutée avant telle ou telle commande).
Mais comment arriver à implanter ce prompt ultime ?
C’est très simple : il suffit d’éditer le fichier /etc/bash.bashrc et d’entrer la ligne suivante, à la fin du fichier.
PS1="\[\e[1;37m\](\#) \[\e[1;33m\]\D{%H:%M:%S} \[\e[0;32m\]\[\e[1;31m\]\u\[\e[1;36m\]@\h:\[\e[1;32m\]\w\[\e[1;35m\]#\[\e[m\] "
C’est tout. Voilà votre serveur équipé du prompt ultime ! La classe intégrale, non ?
Pingback : @Tb | Edito #3 : fin des vacances