Comment Changer les Couleurs de Répertoires et de Fichiers dans la Commande ls

0
958

Si vous avez exécuté la commande ls dans Bash, vous remarquerez que les répertoires et fichiers que vous voyez sont colorés en fonction de leur type. Vous pouvez personnaliser votre propre jeu de couleurs à choisir différentes couleurs de texte, les couleurs de fond et de mise en forme comme le gras et le soulignement.

Comment Cela Fonctionne

Le schéma de couleur est stocké dans le LS_COLORS variable. Pour afficher votre schéma de couleurs en cours, vous pouvez dire à la fête à imprimer le contenu de la variable:

echo $LS_COLORS

Vous verrez une longue liste de types de fichiers et le nombre de codes. Nous allons vous expliquer comment créer une liste comme vous-même.

Avant de jouer avec cela, nous vous recommandons d’enregistrer le contenu actuel de la LS_COLORS variable à une autre variable. Cela vous permettra de restaurer rapidement les paramètres par défaut sans la signature de la coquille et de la signature, ou de la fermeture et de la réouverture de la fenêtre de terminal. Pour enregistrer le contenu actuel de la LS_COLORS variable à une nouvelle variable nommée d’ORIGINE, exécutez:

ORIGINE=$LS_COLORS

À tout moment, vous pouvez exécuter la commande suivante pour annuler vos modifications et rétablir les couleurs par défaut:

LS_COLORS=$ORIGINAL

Vos modifications sont toujours temporaires jusqu’à ce que vous modifiez un fichier pour vous les nouvelles valeurs par défaut. Vous pouvez toujours vous déconnecter et de vous reconnecter ou de fermer et de rouvrir une fenêtre de terminal pour restaurer les couleurs à leur réglage par défaut. Toutefois, cela rend plus facile de le faire avec un seul, commande rapide.

Comment Définir des Couleurs Personnalisées

Le LS_COLORS variable contient une liste de types de fichiers avec des codes de couleur. Par défaut la liste est longue, car il spécifie les différentes couleurs pour un certain nombre de différents types de fichiers.

Commençons un exemple de base pour montrer comment cela fonctionne. Disons que nous voulons changer la couleur de répertoires à partir de la valeur par défaut en gras bleu en gras et en rouge. Nous pouvons exécuter la commande suivante:

LS_COLORS=”di=1;31″

Le di=1;31 bit indique ls que les répertoires (di) ( = ) gras (1;) rouge (31).

Cependant, c’est juste un très simple LS_COLORS la variable qui définit les répertoires d’une seule couleur et les feuilles de tous les autres types de fichier comme la couleur par défaut. Disons que nous voulons rendre les fichiers avec l’ .bureau d’extension de fichier souligné couleur cyan, ainsi. Nous pouvons exécuter la commande suivante:

LS_COLORS=”di=1:31:*.bureau=4;36″

Cela dit ls que les répertoires (di) ( = ) gras (1;) rouge (31) et (:) tout fichier se terminant par .de bureau (*.de bureau) ( = ) a (4;) cyan (36).

C’est le processus de montage de votre liste de types de fichiers et de couleurs. Spécifier autant que vous le souhaitez dans la forme filetype=couleur, en les séparant par un deux-points (:).

ARTICLE CONNEXEComment Personnaliser (et Coloriser) Votre Invite Bash

Pour assembler votre propre liste, vous aurez juste besoin de connaître la liste des codes de couleur et de type de fichier des codes. Il utilise les mêmes numérique des codes de couleur que vous utilisez lors de la modification de la couleur dans votre invite de Bash.

Voici la liste des codes de couleur pour le texte en avant-plan:

  • Noir: 30
  • Bleu: 34
  • Cyan: 36
  • Vert: 32
  • Violet: 35
  • Rouge: 31
  • Blanc: 37
  • Jaune: 33

Par exemple, puisque le texte jaune est la couleur de code 33, vous pouvez utiliser di=33 pour faire répertoires jaune.

Voici la liste de la couleur du texte attributs:

  • Texte Normal: 0
  • En gras ou du Texte de Lumière: 1 (Cela dépend de l’émulateur de terminal.)
  • Dim Text: 2
  • Texte Souligné: 4
  • Texte clignotant: 5 (Ce qui ne fonctionne pas dans la plupart des émulateurs de terminal.)
  • Inversé Texte: 7 (Ce qui inverse les couleurs d’arrière-plan, de sorte que vous verrez un texte noir sur un fond blanc si le texte actuel est un texte blanc sur un fond noir.)
  • Texte Caché: 8

Lors de la spécification d’un attribut ou plus d’un code de couleur, distincte de la liste de codes avec un point-virgule (;). Vous n’avez pas besoin de spécifier 0 pour le texte normal, comme du texte normal est utilisé lorsque vous ne spécifiez pas l’attribut ici.

Par exemple, puisque le texte en gras est le code couleur 1 et texte jaune est la couleur de code 33, vous pouvez utiliser di=1;33 pour faire répertoires gras jaune. Vous pouvez également spécifier plus d’un attribut. Par exemple, vous pouvez utiliser di=1;4;33 pour faire répertoires gras, souligné en jaune.

Voici la liste de la couleur de fond des codes:

  • Fond noir: 40
  • Fond bleu: 44
  • Arrière-plan Cyan: 46
  • Fond vert: 42
  • Fond mauve: 45
  • Fond rouge: 41
  • Fond blanc: 47
  • Fond jaune: 43

Par exemple, depuis un arrière-plan bleu est la couleur du code 44, vous pouvez utiliser di=44 à utiliser un fond bleu pour les répertoires. Vous pouvez également combiner une couleur d’arrière-plan du code, une couleur de premier plan du code, et autant d’attributs que vous le souhaitez. Par exemple, di=1;4;33;44 voudrais vous donner gras, souligné du texte jaune sur fond bleu.

Voici la liste de type de fichier de codes:

  • Répertoire: di
  • Fichier: fi
  • Le Lien symbolique: ln
  • Tube nommé (FIFO): pi
  • Socket: donc
  • Dispositif de bloc: bd
  • Le caractère Périphérique: lecteur cd
  • Orphelin Lien Symbolique (pointe vers un fichier qui n’existe plus): ou
  • Manquant de Fichier (un fichier manquant qu’un orphelin lien symbolique pointe): mi
  • Fichier exécutable (le “x” de l’autorisation): ex
  • *.extension: Tout fichier se terminant par une extension que vous spécifiez. Par exemple, l’utilisation *.txt pour les fichiers se terminant par .txt, *.mp3 pour les fichiers se terminant par .mp3, *.bureau pour les fichiers se terminant par .de bureau, ou tout ce que vous voulez. Vous pouvez spécifier autant de différentes extensions de fichiers que vous le souhaitez.

Spécifier autant de types différents de type de fichier de codes avec autant de couleurs différentes que vous le souhaitez, séparés par le caractère:. Répétez ce processus pour assembler votre LS_COLORS variable.

Par exemple, disons que vous souhaitez utiliser en violet et gras pour les répertoires, a souligné le texte en rouge pour les fichiers exécutables, et gras texte en vert sur un fond rouge .les fichiers mp3. Mettre ensemble le type de fichier des codes et des codes de couleur à partir de la liste ci-dessus, vous obtiendrez:

LS_COLORS=”di=1;35:ex=4;31:*.mp3=1;32;41″

Comment configurer Votre Nouveau Couleurs par Défaut

Vous avez maintenant une coutume LS_COLORS variable que les fonctions de l’actuelle session Bash. Cependant, vous voudrez probablement pour la rendre permanente, de sorte qu’il est utilisé automatiquement chaque fois que vous démarrez une nouvelle session Bash sans avoir à le rappeler.

Vous pouvez configurer votre personnalisé LS_COLORS variable et toute autre Bash variable que vous voulez, en l’ajoutant à votre compte d’utilisateur .bashrc fichier. Ce fichier se trouve dans ~/.bashrc. Donc, si votre nom d’utilisateur est bob, vous le trouverez dans /home/bob/.bashrc. Il y a d’autres façons de définir des variables d’environnement en tant que bien, mais c’est simple.

Tout d’abord, ouvrez ce fichier dans votre éditeur de texte préféré. Nous allons utiliser nano ici comme un exemple, mais vous pouvez utiliser vi, emacs, ou tout ce que vous voulez.

nano ~/.bashrc

Ajouter votre personnalisé LS_COLORS variable d’une nouvelle ligne à la fin du fichier, comme ceci:

LS_COLORS=”di=1;35:ex=4;31:*.mp3=1;32;41″

Enregistrez le fichier et quittez l’éditeur. Dans nano, appuyez sur Ctrl+O puis appuyez sur Enter pour enregistrer, puis appuyez sur Ctrl+X pour quitter.

Chaque fois que vous démarrez une nouvelle session Bash, Bash va lire la .bashrc fichier automatiquement pour régler votre LS_COLORS variable. Pour modifier vos couleurs dans l’avenir, revenir à votre .bashrc fichier et modifier le LS_COLORS ligne.

Vous pouvez aussi supprimer le LS_COLORS= ligne que vous avez ajouté à votre .bashrc fichier à utiliser les couleurs par défaut de nouveau. Si vous ne définissez pas la LS_COLORS valeur, Bash va utiliser les couleurs par défaut.