Les outils en ligne de commande écrits en Rust ont complètement transformé l'expérience terminal des développeurs ces dernières années. Grâce à des performances exceptionnelles, une sécurité mémoire robuste et une expérience utilisateur moderne, les outils CLI Rust deviennent le choix privilégié des développeurs.
Aujourd'hui, je vais vous présenter 10 outils CLI Rust émergents à surveiller en 2026, qui augmenteront considérablement l'efficacité de votre travail en ligne de commande.
1. Yazi - Gestionnaire de fichiers terminal ultra-rapide
GitHub: https://github.com/sxyazi/yazi
Yazi est un gestionnaire de fichiers terminal basé sur les E/S asynchrones, extrêmement rapide et riche en fonctionnalités.
# Installation
cargo install yazi-fm yazi-cli
# Ou via un gestionnaire de paquets
brew install yazi
Fonctionnalités clés : - Opérations d'E/S asynchrones, aucun délai lors du chargement de grands répertoires - Prise en charge intégrée de la prévisualisation d'images - Raccourcis clavier style Vim - Configuration Lua hautement personnalisable
-- ~/.config/yazi/init.lua
return {
manager = {
show_hidden = true,
sort_by = "mtime",
},
}
2. Atuin - Historique Shell magique
GitHub: https://github.com/atuinsh/atuin
Atuin utilise une base de données SQLite pour stocker votre historique Shell et prend en charge la synchronisation multi-appareils.
# Installation
curl --proto '=https' --tlsv1.2 -LsSf https://setup.atuin.sh | sh
# Initialisation (à ajouter dans ~/.bashrc ou ~/.zshrc)
eval "$(atuin init bash)"
Fonctionnalités clés : - Synchronisation chiffrée de l'historique Shell vers le cloud - Fonctionnalité de recherche floue puissante - Statistiques d'utilisation des commandes - Prise en charge de la synchronisation multi-appareils
# Rechercher dans l'historique
atuin search --keyword docker
# Voir les statistiques
atuin stats
3. Zoxide - Commande cd plus intelligente
GitHub: https://github.com/ajeetdsouza/zoxide
zoxide est un outil intelligent de saut de répertoire qui apprend vos habitudes et recommande automatiquement les répertoires fréquemment utilisés.
# Installation
curl -sSfL https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | sh
# Initialisation
zoxide init bash --cmd cd >> ~/.bashrc
Fonctionnalités clés : - Recommandation intelligente de répertoires basée sur la fréquence d'utilisation - Prise en charge de la correspondance floue - Plus rapide que la commande z - Compatible avec tous les shells principaux
# Aller à un répertoire fréquent
z documents # Aller à ~/documents
# Recherche floue de répertoire
zi doc # Recherche interactive contenant "doc"
4. Dust - Analyse d'utilisation du disque plus intuitive
GitHub: https://github.com/bootandy/dust
dust est une alternative moderne à la commande du, affichant l'utilisation du disque sous forme d'arborescence.
# Installation
cargo install du-dust
# Ou via un gestionnaire de paquets
brew install dust
Fonctionnalités clés : - Affichage visuel en arborescence - Ignore automatiquement les fichiers cachés et les répertoires git - Sortie colorée pour identifier facilement les gros fichiers - Plusieurs fois plus rapide que du
# Analyser le répertoire courant
dust
# Analyser un répertoire spécifique, afficher les 20 premiers
dust -n 20 /home
# Afficher les pourcentages
dust -p
5. Eza - Alternative moderne à ls
GitHub: https://github.com/eza-community/eza
eza est une alternative moderne à la commande ls, offrant un support riche en couleurs et icônes.
# Installation
cargo install eza
# Ou via un gestionnaire de paquets
brew install eza
Fonctionnalités clés : - Couleurs riches et mise en évidence - Prise en charge des icônes Nerd Fonts - Intégration de l'état Git - Vue arborescente
# Liste détaillée avec icônes
eza -lah --icons
# Vue arborescente
eza --tree -L 2
# État Git
eza -lah --git
Ajoutez des alias dans la configuration de votre shell :
alias ls='eza'
alias ll='eza -lah'
alias lt='eza --tree'
6. Rip - Alternative sûre à rm
GitHub: https://github.com/nivekuil/rip
rip est un outil de suppression de fichiers sécurisé qui déplace les fichiers vers la corbeille du système au lieu de les supprimer définitivement.
# Installation
cargo install rip
# Utilisation
rip file.txt
Fonctionnalités clés : - Déplace les fichiers vers la corbeille - Prend en charge la restauration des fichiers supprimés - Compatible avec tous les systèmes d'exploitation principaux - Prévention de la perte accidentelle de données
# Supprimer un fichier (récupérable)
rip important.txt
# Voir la corbeille
rip --list
# Restaurer un fichier
rip --restore important.txt
7. Ouch - Compression/décompression sans douleur
GitHub: https://github.com/ouch-org/ouch
ouch est un outil de compression et décompression simple à utiliser, prenant en charge plusieurs formats.
# Installation
cargo install ouch
# Décompresser un fichier
ouch decompress archive.zip
# Compresser un fichier
ouch compress file.txt archive.zip
Fonctionnalités clés : - Interface de commande unifiée - Prend en charge les formats zip, tar, gz, bz2, xz, etc. - Détection automatique du format de compression - Sortie d'information concise
# Décompresser (détection automatique du format)
ouch d archive.tar.gz
# Compresser en zip
ouch c file1.txt file2.txt output.zip
# Compresser en tar.gz
ouch c folder/ archive.tar.gz
8. Bat - cat avec coloration syntaxique
GitHub: https://github.com/sharkdp/bat
bat est une version améliorée de la commande cat, offrant une coloration syntaxique et une intégration Git.
# Installation
cargo install bat
# Ou via un gestionnaire de paquets
brew install bat
Fonctionnalités clés : - Coloration syntaxique prenant en charge plusieurs langages - Affichage des modifications Git - Affichage des numéros de ligne - Pagination automatique
# Voir un fichier (avec coloration)
bat src/main.rs
# Afficher tous les fichiers (y compris non-texte)
bat -A config.yml
# Voir les modifications Git
bat --diff-changes file.py
9. Sniffnet - Surveillance du trafic réseau
GitHub: https://github.com/GyulyVGC/sniffnet
sniffnet est un outil de surveillance du trafic réseau multiplateforme, offrant une vue intuitive en temps réel.
# Installation
cargo install sniffnet
# Exécution (nécessite sudo)
sudo sniffnet
Fonctionnalités clés : - Surveillance du trafic réseau en temps réel - Classification du trafic par application - Affichage de la géolocalisation des connexions - Informations statistiques détaillées
Cas d'utilisation : - Surveiller l'activité réseau des applications - Détecter les connexions anormales - Analyser l'utilisation de la bande passante
10. Procs - Surveillance de processus moderne
GitHub: https://github.com/dalance/procs
procs est une alternative moderne à la commande ps, offrant une sortie colorée et une meilleure lisibilité.
# Installation
cargo install procs
# Exécution
procs
Fonctionnalités clés : - Sortie colorée, facile à lire - Ajustement intelligent de la largeur des colonnes - Fonctionnalités de recherche et de filtrage - Vue arborescente affichant les relations entre processus
# Voir tous les processus
procs
# Rechercher un processus spécifique
procs docker
# Vue arborescente
procs --tree
# Colonnes personnalisées
procs -c pid,cpu,mem,command
Comparaison des performances
Voici une comparaison des performances de certains outils par rapport aux outils traditionnels :
| Outil | Alternative traditionnelle | Gain de vitesse |
|---|---|---|
| dust | du | 3-5 fois |
| eza | ls | 2-3 fois |
| procs | ps | 1,5-2 fois |
| ripgrep | grep | 5-10 fois |
| fd | find | 3-5 fois |
Conseils d'installation
Pour la plupart des outils, il est recommandé d'utiliser les méthodes d'installation suivantes :
macOS :
brew install yazi atuin zoxide dust eza bat procs
Linux (Ubuntu/Debian) :
# Installation via cargo
cargo install yazi-fm atuin zoxide du-dust eza bat procs
# Ou via le gestionnaire de paquets de chaque distribution
sudo apt install bat # Certains outils ont déjà des paquets
Windows :
# Utiliser winget
winget install eza
winget install sharkdp.bat
# Ou utiliser cargo
cargo install yazi-fm atuin zoxide
Astuces de configuration
Ajoutez les configurations suivantes à votre fichier de configuration de shell (~/.bashrc ou ~/.zshrc) :
# Paramètres d'alias
alias ls='eza --icons'
alias ll='eza -lah --icons'
alias cat='bat'
alias rm='rip'
alias du='dust'
alias ps='procs'
# Complétion automatique
if command -v atuin &> /dev/null; then
eval "$(atuin init bash)"
fi
if command -v zoxide &> /dev/null; then
eval "$(zoxide init bash)"
fi
Résumé
Ces outils CLI Rust offrent non seulement des performances exceptionnelles, mais aussi une expérience utilisateur moderne. Leurs caractéristiques communes sont :
- Rapides - Tirant parti des avantages de performance de Rust
- Sécurisés - Sécurité mémoire, réduisant les plantages
- Faciles à utiliser - Sorties intuitives et valeurs par défaut raisonnables
- Personnalisables - Options de configuration riches
- Multiplateformes - Supportent Linux, macOS et Windows
Commencez à utiliser ces outils et portez l'efficacité de votre ligne de commande à un nouveau niveau !
Ressources connexes : - Documentation officielle Rust - Liste Awesome Rust CLI tools - Guide d'installation des outils Rust