Shell coloré

Un article de Diablotins.org.


Image:brush.png

Coloration contextuelle Shell




Souvent on veut colorer le ls de FreeBSD, alors on essaie :

  $ alias ls='ls --color'

Hélas, ça ne marche pas ...
La commande ls de FreeBSD, n'est pas la commande GNU. On vois bien une solution pointer son nez :

  $ alias ls='ls -G'

Comme nous dit le manuel. Mais ce dernier nous dit mieux que ça !

On peu lire l'existence de trois variables d'environnement :

  • CLICOLOR : cette variable est un boolĂ©en qui sert Ă  la mĂŞme chose que le -G de notre alias. il active la coloration sur ls.
  • CLICOLOR_FORCE : cette variable est aussi un boolĂ©en, mais cette fois-ci, si elle est Ă  “enable”, cette variable implique la coloration dans tout les cas mĂŞme en mode non interactif. La coloration fait appel au caractères d'Ă©chappements, et donc je vous dĂ©conseille se mode car sinon, dans vos scripts en piping de sortie de ls, vous aurez de drĂ´les de surprises.
  • LSCOLORS : c'est ici que ça devient intĂ©ressant !:)

on peu configurer les couleurs en liste 'fb', “foreground/background”.
les couleurs sont :

  • a noir
  • b rouge
  • c vert
  • d marron
  • e blue
  • f magenta
  • g cyan
  • h gris clair
  • x couleur par dĂ©faut du shell pour le foreground et le background

Les majuscules en foreground mettent en gras. On a affaire ici au couleurs standards ANSI'. L'affichage dépend tout de même des capacités du mode d'affichage dans le quel on est.
xterm, xterm-color pour X sont très corrects et cons25 sous console.

L'ordre de la sĂ©quence pour la liste est :

  1. répertoire
  2. lien symbolique
  3. socket
  4. tube
  5. executable
  6. bloc spécial
  7. charactre spécial
  8. executable avec bit setuid
  9. executable avec bit setgid
  10. répertoire en sticky bit, en ecriture pour tout le monde
  11. répertoire en ecriture pour tout le monde, sans sticky bit

On peut donc avoir dans sont script rc de shell (.bashrc,.zshrc,.cshrc, ...).

  export CLICOLOR=enable
  export LSCOLORS='cxgxhxhxbxhxhxbabacaca'
Récupérée de « http://diablotins.net/index.php/Shell_color%C3%A9 »
Projets :
Boîte à outils