ls en couleurs

Utiliser le ls en couleurs sous UNIX

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éfinition

Couleur

a

noir

b

rouge

c

vert

d

marron

e

bleu

f

magenta

g

cyan

h

gris clair

A

noir (gras) / gris foncé

B

rouge (gras)

C

vert (gras)

D

marron (gras) / jaune

E

bleu (gras)

F

magenta (gras)

G

cyan (gras)

H

gris clair (gras) / blanc brillant

x

couleur de forme ou de fond par défaut

Pour la position, nous avons :

Position

Correspondance

1

répertoire

2

lien symbolique

3

socket

4

pipe

5

exécutable

6

bloc spécial

7

caractère spécial

8

exécutable avec setuid bit set

9

exécutable sans setgid bit set

10

répertoire xx4 avec sticky bit

11

ré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 dans 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 de votre répertoire ${HOME}.