Terminal Mac OS X : activer les couleurs pour la commande LS

Publié le 06 mars 2011 par Ph3nol

Par défaut, la commande LS du Terminal Mac OS X ne propose qu’une sortie basique, dépourvue de couleur.

Pour activer cette sortie colorée et l’appliquer par défaut, ouvrez votre Terminal, vous devez normalement être dans votre répertoire utilisateur.

Pour commencer vous devez créer (s’ils n’existent pas) les fichiers .bash_profile et .bashrc dans votre répertoire utilisateur. Ces fichiers sont cachés par défaut, vous pouvez les lister en utilisant la commande ls -la.

Pour les créer facilement, il suffit de taper les commandes suivantes :

touch .bash_profile
touch .bashrc

En suite, vous devrez lier .bashrc à .bash_profile en tapant cette commande :

source ~/.bashrc

Il ne reste plus qu’à activer les couleurs dans votre terminal et éventuellement les personnaliser. Editez votre fichier .bashrc en tapant nano .bashrc dans votre Terminal et collez les lignes suivantes :

export LS_OPTIONS='--color=auto'
export CLICOLOR='Yes'
export LSCOLORS=''

Sauvegardez via un Ctrl + X, confirmez en appuyant sur la touche Y et c’est fait !

Redémarrez votre Terminal, faites un ls et voyez la vie en couleurs !

Quelques informations complémentaires

Voici les couleurs disponibles ainsi que la lettre qui leur est attribuée :

  • a = noir
  • b = rouge
  • c = vert
  • d = marron
  • e = bleu
  • f = magenta
  • g = cyan
  • h = gris clair
  • x = par défaut

Pour personnaliser l’affichage coloré, il faudra définir LSCOLORS en tapant une suite de lettres correspondant aux couleurs choisies. Leur ordre est le suivant :

  • DIR
  • SYM_LINK
  • SOCKET
  • PIPE
  • EXE
  • BLOCK_SP
  • CHAR_SP
  • EXE_SUID
  • EXE_GUID
  • DIR_STICKY
  • DIR_WO_STICKY

Pour chaque couleur, nous utiliserons deux lettres. La première concerne la couleur d’écriture, la deuxième celle de l’arrière plan. Par exemple, si nous souhaitons écrire en rouge et conserver l’arrière-plan par défaut, nous utiliserons la combinaison bx.

Pour un rendu en gras, il suffira de mettre la lettre en majuscules. Pour un rendu rouge en gras avec un arrière plan gris clair, nous utiliserons par exemple la combinaison Bh.

Au final, votre LSCOLORS doit ressembler à une suite dans le style suivant :

export LSCOLORS='Bxgxfxfxcxdxdxhbadbxbx'