12/22/06

bash prompt color pour screen (Debian Etch)


Quand on passe sa vie dans des consoles, il est préférable de repérer visuellement si on est dans un terminal screen ou non.

Une méthode consiste à changer la forme du prompt. A titre d'exemple, on peut paramétrer le prompt de l'utilisateur courant pour qu'il soit de couleur cyan et celui de root rouge. Lorsqu'on entre dans un terminal screen, on peut par exemple passer le prompt en gras pour indiquer qu'on est dans un screen. Cela ne choque pas et permet de savoir immédiatement s'il s'agit d'un screen lorsqu'on passe en revue les terminaux ouverts.

Il faut modifier le .bashrc par défaut de l'utilisateur (et le /etc/skel/.bashrc si vous créez régulièrement des utilisateurs) en rajoutant 2 sections pour le « case "$TERM" » :

xterm*|rxvt*)
PS1='${debian_chroot:+($debian_chroot)}\e[0;36m\u@\h:\e[0;37m\w\e[0;36m\$\e[0;37m '
;;
screen)
PS1='${debian_chroot:+($debian_chroot)}\e[1;36m\u@\h:\e[1;37m\w\e[1;36m\$\e[0;37m '
;;

Pour root, on rajoute la section :

case "$TERM" in
screen)
PS1='\e[1;31m\u@\h:\e[1;37m\w\e[1;31m\$\e[0;37m '
;;
xterm*|rxvt*)
PS1='\e[0;31m\u@\h:\e[0;37m\w\e[0;31m\$\e[0;37m '
;;
*)
PS1='\h:\w\$ '
;;
esac

0 Commentaire

Post a Comment