Par défaut, votre UNIX (dans cet exemple, FreeBSD) préféré vous propose des couleurs qui, à la longue peuvent lasser. Pour changer, un simple tour dans le man donne la solution à tous vos problèmes. ls est une commande qui possède de nombreuses fonctionnalités. Celles qui concernent la couleur indiquent ce qui suit.

Activer les couleurs

Vérifions d'abord que le terminal qui nous utilisons permet d'afficher les couleurs. Pour cela, il suffit de taper :

ls -G

Normalement, la liste doit être colorée, avec les couleurs par défaut.

si vous voulez activer l'utilisation des couleurs pour ce terminal, il suffit d'activer les couleurs de la façon suivante :

setenv CLICOLOR

Mais cette activation sera supprimée à la fin de la session.

Pour modifier ces couleurs, il suffit de définir la variable LSCOLORS. La valeur de cette variable est une chaîne de caractère composée de 22 caractères, 11 groupes de 2 caractères, chaque groupe codant la couleur de l'encre et la couleur du fond.

En ce qui concerne les couleurs, nous avons :


définitionCouleur
anoir
brouge
cvert
dmarron
ebleu
fmagenta
gcyan
hgris clair
Anoir (gras) / gris foncé
Brouge (gras)
Cvert (gras)
Dmarron (gras) / jaune
Ebleu (gras)
Fmagenta (gras)
Gcyan (gras)
Hgris clair (gras) / blanc brillant
xcouleur de forme ou de fond par défaut

Pour la position, nous avons :


PositionCorrespondance
1répertoire
2lien symbolique
3socket
4pipe
5exécutable
6bloc spécial
7caractère spécial
8exécutable avec setuid bit set
9exécutable sans setgid bit set
10répertoire xx4 avec sticky bit
11répertoire xx4 sans sticky bit

Les couleurs par défaut sont : exfxcxdxbxegedabagacad

Pour composer un nouvel ensemble de couleurs, nous définissons avec le shell standard (sh) la variable LSCOLORS. Par exemple :

setenv LSCOLORS ExGxFxdxCxDxDxBxBxExEx

ExGxFxdxCxDxDxBxBxExEx est interprété de la façon suivante :

Ex : premier groupe --> répertoire ; E-->bleu (gras) pour la police ; x--> couleur par défaut pour le fond.

Gx : deuxième groupe --> lien symbolique ; E-->cyan (gras) pour la police ; x--> couleur par défaut pour le fond.

Fx : troisième groupe --> socket ; E-->magenta (gras) pour la police ; x--> couleur par défaut pour le fond.

etc.


Pour les autres uNIX

Après quelques tests, le ls en couleurs ne semble pas être disponible de nombreuses versions UNIX commerciales comme HP-UX, AIX, etc.

Configuration

Une fois que vous avez fait vos tests et que les couleurs vous plaisent, vous pouvez configurer votre profil afin de conserver cette configuration personnalisée. Pour cela ajouter la définition de vos couleurs (LSCOLORS) et l'activation du ls en couleur (CLICOLOR) dans le .cshrc dans votre répertoire ${HOME}.