Aller au contenu
Outils medium

eza : ls en couleurs avec Git et icônes

11 min de lecture

logo eza

Vous tapez ls -la dans un dossier avec 50 fichiers. Tout est blanc sur noir. Vous cherchez un fichier modifié récemment, mais impossible de distinguer les dates. Vous voulez voir si un fichier est suivi par Git, mais il faut lancer git status à part.

eza résout ce problème en une commande.

Les dossiers sont en bleu, les exécutables en vert, les fichiers ignorés par Git sont grisés. Vous voyez immédiatement ce qui vous intéresse.

Fonctionnalitélseza
Couleurs par typeBasiqueComplet (images, archives, code…)
Icônes✅ (avec Nerd Fonts)
Statut Git✅ (M = modifié, I = ignoré)
Dates relatives✅ (“3 hours”, “1 week”)
Arborescence✅ (eza -T)
Hyperlinks✅ (Ctrl+clic ouvre le fichier)

eza est écrit en Rust. Il est rapide, même sur des dossiers avec des milliers de fichiers.

Fenêtre de terminal
# Ajouter le dépôt
sudo mkdir -p /etc/apt/keyrings
wget -qO- https://raw.githubusercontent.com/eza-community/eza/main/deb.asc | sudo gpg --dearmor -o /etc/apt/keyrings/gierens.gpg
echo "deb [signed-by=/etc/apt/keyrings/gierens.gpg] http://deb.gierens.de stable main" | sudo tee /etc/apt/sources.list.d/gierens.list
# Installer
sudo apt update && sudo apt install -y eza
# Vérifier
eza --version

Ouvrez un terminal et tapez :

Fenêtre de terminal
eza -la

Vous voyez quelque chose comme :

drwxrwxr-x - bob 30 Jan 14:06 .astro
.rw-rw-r-- 1.3k bob 24 Jan 19:09 .envrc
drwxr-xr-x - bob 13 Jan 16:17 .github
.rw-rw-r-- 3.7k bob 24 Jan 19:12 .gitignore
.rw-rw-r-- 238k bob 30 Jan 09:19 astro.config.mjs
drwxr-xr-x - bob 27 Jan 18:55 src

C’est comme ls -la, mais avec des couleurs. Les dossiers sont en bleu, les fichiers en blanc. Les tailles sont lisibles (1.3k au lieu de 1342).

Vous travaillez dans un repo Git et voulez voir quels fichiers sont modifiés, ajoutés ou ignorés.

Ce que vous faites :

Fenêtre de terminal
eza -la --git
drwxrwxr-x - bob 30 Jan 14:06 -I .astro
.rw-rw-r-- 1.3k bob 24 Jan 19:09 -I .envrc
drwxr-xr-x - bob 13 Jan 16:17 -- .github
.rw-rw-r-- 3.7k bob 24 Jan 19:12 -M .gitignore
.rw-rw-r-- 238k bob 30 Jan 09:19 -- astro.config.mjs

La colonne Git affiche :

CodeSignification
--Non modifié (suivi par Git, propre)
-MModifié (pas encore commité)
-NNouveau fichier (pas encore ajouté)
-IIgnoré (dans .gitignore)

Situation 2 : “Je veux voir l’arborescence d’un projet”

Section intitulée « Situation 2 : “Je veux voir l’arborescence d’un projet” »

Vous découvrez un nouveau projet et voulez voir sa structure.

Ce que vous faites :

Fenêtre de terminal
eza -T --level=2
.
├── docs
│ └── MIGRATION-GLOSSARY-FINAL-REPORT.md
├── public
│ ├── images
│ └── robots.txt
├── src
│ ├── assets
│ ├── components
│ └── content
└── package.json

--level=2 limite la profondeur à 2 niveaux. Sans cette option, vous verriez l’arborescence complète (potentiellement très longue).

Situation 3 : “Je veux trouver les fichiers récents”

Section intitulée « Situation 3 : “Je veux trouver les fichiers récents” »

Vous cherchez ce que vous avez modifié cette semaine.

Ce que vous faites :

Fenêtre de terminal
eza -l --time-style=relative --sort=modified
.rw-rw-r-- 65 bob 3 weeks commitlint.config.js
.rw-rw-r-- 11k bob 3 weeks LICENSE
.rw-rw-r-- 16k bob 1 day GUIDE-COMMAND-TRAINING-COMPONENTS.md
.rw-rw-r-- 238k bob 4 hours astro.config.mjs
drwxrwxr-x - bob 2 minutes dist

Les fichiers les plus récents sont en bas. “4 hours”, “2 minutes” — vous voyez immédiatement l’activité récente.

Situation 4 : “Je veux lister uniquement les dossiers”

Section intitulée « Situation 4 : “Je veux lister uniquement les dossiers” »

Vous cherchez un dossier spécifique dans un projet avec beaucoup de fichiers.

Ce que vous faites :

Fenêtre de terminal
eza -D
dist docs new node_modules public scripts secrets src src-schema todo

-D filtre pour n’afficher que les dossiers. Utile quand vous naviguez dans un projet.

OptionCe que ça fait
-lListe longue (permissions, taille, date)
-aAffiche les fichiers cachés
-1Une entrée par ligne
-TArborescence (tree)
-RRécursif (descend dans les dossiers)
OptionCe que ça fait
--gitAffiche le statut Git
--iconsAffiche les icônes (nécessite Nerd Fonts)
--headerAjoute une ligne d’en-tête
--hyperlinkRend les fichiers cliquables
OptionCe que ça fait
--sort=sizeTrie par taille
--sort=modifiedTrie par date de modification
--group-directories-firstDossiers en premier
-DUniquement les dossiers
-fUniquement les fichiers
--git-ignoreIgnore les fichiers du .gitignore
OptionExemple
--time-style=default”30 Jan 14:06”
--time-style=relative”4 hours”, “3 weeks”
--time-style=iso”2026-01-30”
--time-style=long-iso”2026-01-30 14:06”

Ajoutez dans votre ~/.bashrc ou ~/.zshrc :

Fenêtre de terminal
# Alias de base
alias ls='eza'
alias ll='eza -la --git --group-directories-first'
alias lt='eza -T --level=2'
alias lr='eza -la --sort=modified --time-style=relative'

Rechargez votre shell :

Fenêtre de terminal
exec $SHELL

Maintenant :

  • ls → eza avec couleurs
  • ll → liste complète avec Git
  • lt → arborescence
  • lr → fichiers récents

Pour afficher les icônes de fichiers, vous devez utiliser une police Nerd Font dans votre terminal.

  1. Téléchargez une Nerd Font

    Allez sur nerdfonts.com et téléchargez une police. Recommandations :

    • FiraCode Nerd Font — populaire, lisible
    • JetBrainsMono Nerd Font — moderne, propre
    • Hack Nerd Font — classique
  2. Installez la police

    • Linux : Copiez les fichiers .ttf dans ~/.local/share/fonts/ puis fc-cache -fv
    • macOS : Double-cliquez sur le fichier .ttf
    • Windows : Clic droit → Installer
  3. Configurez votre terminal

    Dans les paramètres de votre terminal (GNOME Terminal, iTerm2, Windows Terminal…), sélectionnez la Nerd Font que vous avez installée.

  4. Testez

    Fenêtre de terminal
    eza --icons

    Vous devriez voir des icônes à côté des noms de fichiers :

    • pour les dossiers
    • pour les fichiers Python
    • pour les fichiers JavaScript
    • etc.

eza supporte les thèmes via un fichier YAML. Créez ~/.config/eza/theme.yml :

~/.config/eza/theme.yml
# Couleurs des permissions
filekinds:
directory:
foreground: Blue
executable:
foreground: Green
symlink:
foreground: Cyan
# Couleurs des tailles
size:
number:
foreground: Yellow
unit:
foreground: Yellow
# Couleurs Git
git:
modified:
foreground: Yellow
ignored:
foreground: BrightBlack

Les couleurs disponibles : Black, Red, Green, Yellow, Blue, Purple, Cyan, White (et leurs variantes Bright).

Commande lsÉquivalent eza
ls -laeza -la
ls -lheza -l (human-readable par défaut)
ls -lteza -l --sort=modified
ls -lSeza -l --sort=size
ls -lReza -lR ou eza -T
ls --color=autoeza (couleurs par défaut)

Les couleurs ne s’affichent pas :

Vérifiez votre variable TERM :

Fenêtre de terminal
echo $TERM

Elle devrait être xterm-256color ou similaire. Si ce n’est pas le cas, ajoutez à votre ~/.bashrc :

Fenêtre de terminal
export TERM=xterm-256color

Les icônes s’affichent mal :

Votre terminal n’utilise pas une Nerd Font. Voir la section “Icônes avec Nerd Fonts”.

eza est lent sur certains dossiers :

Si le dossier est dans un repo Git avec beaucoup de fichiers, --git peut être lent. Utilisez --no-git pour désactiver.

Fenêtre de terminal
eza -la --no-git /chemin/vers/gros/repo

“Invalid option” sur une vieille version :

Certaines options comme --icons nécessitent une version récente. Vérifiez :

Fenêtre de terminal
eza --version

Si votre version est < 0.10, mettez à jour.

  1. eza -la remplace ls -la avec des couleurs
  2. --git affiche le statut Git de chaque fichier
  3. --icons affiche les icônes (nécessite Nerd Fonts)
  4. -T affiche l’arborescence (comme tree)
  5. --time-style=relative affiche “3 hours” au lieu de “30 Jan 14:06”
  6. --group-directories-first met les dossiers en haut
  7. Créez des alias pour ne plus jamais taper les options

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.