Grâce à sa sécurité mémoire, ses performances exceptionnelles et sa capacité à gérer la concurrence, Rust est devenu le langage de choix pour la programmation système et le développement d'outils en ligne de commande. En 2026, la communauté open source a vu émerger toute une série d'excellents outils CLI écrits en Rust. Ils offrent non seulement des performances remarquables, mais aussi une expérience utilisateur largement supérieure aux outils traditionnels.
Aujourd'hui, passons en revue 10 outils CLI Rust qui méritent de rejoindre votre flux de travail. Chacun d'entre eux peut littéralement doubler votre productivité en terminal.
1. ripgrep (rg) - L'outil de recherche de code ultra-rapide
GitHub: https://github.com/BurntSushi/ripgrep
ripgrep est une alternative extrêmement rapide à grep, optimisée pour la recherche de code. Il ignore automatiquement les fichiers listés dans .gitignore.
Fonctionnalités clés :
- 3 à 10 fois plus rapide que grep
- Ignore automatiquement les fichiers .gitignore
- Support des expressions régulières et PCRE2
- Détection intelligente de la casse
- Sortie colorée avec numéros de ligne
Installation :
# macOS
brew install ripgrep
# Ubuntu/Debian
sudo apt install ripgrep
# Arch Linux
sudo pacman -S ripgrep
# Avec Cargo
cargo install ripgrep
Exemples d'utilisation :
# Rechercher les lignes contenant "TODO"
rg TODO
# Rechercher dans un type de fichier spécifique
rg --type rust "fn main"
# Afficher les lignes de contexte
rg -C 3 "error handling"
# Compter les correspondances
rg --count "TODO" src/
2. fd - Un outil de recherche de fichiers simple et rapide
GitHub: https://github.com/sharkdp/fd
fd est une alternative moderne à la commande find, avec une interface intuitive et des performances impressionnantes.
Fonctionnalités clés :
- Sortie colorée, facile à lire
- Ignore .gitignore par défaut
- Recherche par expressions régulières
- Gestion intelligente de la casse
- Recherche parallèle, extrêmement rapide
Installation :
# macOS
brew install fd
# Ubuntu/Debian
sudo apt install fd-find
# Arch Linux
sudo pacman -S fd
# Avec Cargo
cargo install fd-find
Exemples d'utilisation :
# Trouver tous les fichiers .rs
fd "\.rs$"
# Trouver les fichiers contenant "test"
fd test
# Rechercher uniquement dans un répertoire donné
fd config ~/projects/
# Exécuter une commande sur les résultats
fd "\.jpg$" --exec convert {} {}.png
3. bat - L'alternative à cat avec coloration syntaxique
GitHub: https://github.com/sharkdp/bat
bat est une version moderne de cat, avec coloration syntaxique, intégration Git et pagination automatique.
Fonctionnalités clés :
- Coloration syntaxique automatique (plus de 100 langages supportés)
- Intégration Git (affiche les lignes modifiées)
- Pagination automatique (via less)
- Affichage des caractères non imprimables
- Thèmes personnalisables
Installation :
# macOS
brew install bat
# Ubuntu/Debian
sudo apt install bat
# Arch Linux
sudo pacman -S bat
# Avec Cargo
cargo install bat
Exemples d'utilisation :
# Afficher un fichier (avec coloration)
bat src/main.rs
# Afficher tous les numéros de ligne
bat -n config.yaml
# Afficher les caractères non imprimables
bat -A file.txt
# Forcer un langage
bat -l python script.py
# Comparaison côte à côte
bat file1.txt file2.txt
4. dust - L'analyseur d'utilisation disque visuel
GitHub: https://github.com/bootandy/dust
dust est une alternative moderne à du, qui affiche l'utilisation du disque sous forme d'arborescence visuelle.
Fonctionnalités clés : - Visualisation arborescente - Barres colorées pour les proportions - Analyse rapide des gros répertoires - Tri par taille - Interface adaptée au terminal
Installation :
# macOS
brew install dust
# Ubuntu/Debian
sudo apt install dust
# Arch Linux
sudo pacman -S dust
# Avec Cargo
cargo install du-dust
Exemples d'utilisation :
# Analyser le répertoire courant
dust
# Analyser un répertoire spécifique
dust /home/kevin/projects
# Afficher les 20 plus gros éléments
dust -n 20
# Affichage inversé
dust -r
# Sans barres de pourcentage
dust -b
5. eza - L'alternative moderne à ls
GitHub: https://github.com/eza-community/eza
eza (anciennement exa) est une alternative moderne à ls, avec intégration Git, vue arborescente et couleurs riches.
Fonctionnalités clés : - Intégration des statuts Git - Vue arborescente des répertoires - Informations détaillées sur les fichiers - Thèmes de couleurs riches - Support des icônes (nécessite Nerd Font)
Installation :
# macOS
brew install eza
# Ubuntu/Debian
sudo apt install eza
# Arch Linux
sudo pacman -S eza
# Avec Cargo
cargo install eza
Exemples d'utilisation :
# Vue liste (avec icônes)
eza -l --icons
# Vue arborescente
eza --tree
# Statuts Git
eza -l --git
# Afficher la taille des fichiers
eza -lh
# Trier par date de modification
eza -l --sort=modified
Alias recommandés (~/.bashrc ou ~/.zshrc) :
alias ls='eza'
alias ll='eza -lh'
alias la='eza -lha'
alias tree='eza --tree'
6. tldr - Des pages de manuel simplifiées
GitHub: https://github.com/tldr-pages/tldr
tldr propose des versions simplifiées des pages de manuel, en affichant uniquement les exemples d'utilisation les plus courants pour un apprentissage rapide.
Fonctionnalités clés : - Exemples concis et pratiques - Base de commandes maintenue par la communauté - Disponible hors ligne - Support multi-langues - Contributions personnalisables
Installation :
# macOS
brew install tldr
# Ubuntu/Debian
sudo apt install tldr
# Avec npm
npm install -g tldr
# Avec Cargo
cargo install tldr
Exemples d'utilisation :
# Voir les exemples d'une commande
tldr tar
# Mettre à jour le cache local
tldr --update
# Commande au hasard
tldr --random
# Rechercher une commande
tldr --find compression
# Voir les exemples pour une plateforme spécifique
tldr tar --platform linux
7. just - L'alternative moderne à make
GitHub: https://github.com/casey/just
just est un lanceur de commandes, similaire à make, mais avec une syntaxe beaucoup plus propre et conçu spécifiquement pour les tâches de développement.
Fonctionnalités clés :
- Syntaxe justfile concise
- Support de l'auto-complétion
- Gestion des paramètres et des dépendances
- Compatible multi-plateformes
- Sans la complexité d'un Makefile
Installation :
# macOS
brew install just
# Ubuntu/Debian
sudo apt install just
# Arch Linux
sudo pacman -S just
# Avec Cargo
cargo install just
Exemple de justfile :
# Construire le projet
build:
cargo build --release
# Exécuter les tests
test:
cargo test
# Formater le code
fmt:
cargo fmt
# Vérification complète
check: build test
echo "✅ Toutes les vérifications sont passées"
# Commande avec paramètre
deploy environment:
echo "Déploiement vers {{environment}}"
./deploy.sh {{environment}}
Exemples d'utilisation :
# Lister les commandes disponibles
just --list
# Exécuter une commande
just build
just test
# Exécuter avec un paramètre
just deploy production
8. hyperfine - L'outil de benchmark en ligne de commande
GitHub: https://github.com/sharkdp/hyperfine
hyperfine est un outil de benchmark pour ligne de commande, idéal pour comparer les performances de différentes commandes.
Fonctionnalités clés : - Analyse de signification statistique - Exécutions de préchauffage automatiques - Export en plusieurs formats (JSON, CSV, Markdown) - Benchmark parallèle - Rapports statistiques détaillés
Installation :
# macOS
brew install hyperfine
# Ubuntu/Debian
sudo apt install hyperfine
# Arch Linux
sudo pacman -S hyperfine
# Avec Cargo
cargo install hyperfine
Exemples d'utilisation :
# Comparer deux commandes
hyperfine 'rg "pattern" file.txt' 'grep "pattern" file.txt'
# Nombre d'exécutions précis
hyperfine -n 10 'sleep 0.1'
# Exécutions de préchauffage
hyperfine --warmup 3 'cargo build'
# Exporter les résultats
hyperfine --export-json results.json 'command'
# Test paramétré
hyperfine 'sleep {1..5}'
9. starship - Un prompt minimaliste multi-terminal
GitHub: https://github.com/starship/starship
starship est un prompt rapide et hautement personnalisable, compatible avec tous les principaux terminaux et shells.
Fonctionnalités clés : - Support multi-shell (bash, zsh, fish, powershell, etc.) - Détection automatique du type de projet - Affichage riche d'informations (Git, Node, Python, Rust, etc.) - Hautement personnalisable - Performances excellentes (rendu < 1 ms)
Installation :
# macOS
brew install starship
# Ubuntu/Debian
sudo apt install starship
# Arch Linux
sudo pacman -S starship
# Avec Cargo
cargo install starship
Exemple de configuration (~/.config/starship.toml) :
# Format personnalisé
format = """
$directory$git_branch$git_status$package$python$rust$nodejs$jobs$character"""
# Affichage de la branche Git
[git_branch]
format = "[$symbol$branch]($style) "
style = "bold green"
# Invite de commande
[character]
success_symbol = "[❯](bold green)"
error_symbol = "[❯](bold red)"
Configuration shell :
# ~/.bashrc ou ~/.zshrc
eval "$(starship init bash)" # ou zsh/fish/powershell
10. bottom (btm) - Le moniteur système multiplateforme
GitHub: https://github.com/ClementTsang/bottom
bottom est un outil de monitoring système multiplateforme avec une interface graphique intuitive pour surveiller le CPU, la mémoire, le réseau et les processus.
Fonctionnalités clés : - Graphiques de monitoring en temps réel - Liste des processus et classement par ressource - Layout hautement personnalisable - Support multiplateformes - Faible consommation de ressources
Installation :
# macOS
brew install bottom
# Ubuntu/Debian
sudo apt install bottom
# Arch Linux
sudo pacman -S bottom
# Avec Cargo
cargo install bottom
Exemples d'utilisation :
# Lancer le monitoring
btm
# Intervalle de rafraîchissement personnalisé
btm --rate 2000
# Configuration personnalisée
btm --config ~/.config/bottom/bottom.toml
Résumé comparatif des outils
| Outil | Usage | Alternative traditionnelle | Avantage |
|---|---|---|---|
| ripgrep | Recherche de code | grep | 3 à 10 fois plus rapide |
| fd | Recherche de fichiers | find | Recherche parallèle |
| bat | Affichage de fichiers | cat | Coloration syntaxique |
| dust | Analyse de disque | du | Visualisation graphique |
| eza | Liste de répertoires | ls | Intégration Git |
| tldr | Manuel de commandes | man | Exemples concis |
| just | Exécution de tâches | make | Syntaxe épurée |
| hyperfine | Benchmark | time | Analyse statistique |
| starship | Prompt terminal | Prompt par défaut | Multiplateforme |
| bottom | Monitoring système | htop | Interface graphique |
Pourquoi choisir des outils CLI en Rust ?
- Sécurité mémoire : Le système de possession de Rust élimine les fuites mémoire et les conflits de données
- Haute performance : Compilation en code natif, des performances proches du C/C++
- Multiplateforme : Compilez une fois, exécutez partout
- Faible empreinte : Aucune dépendance runtime, démarrage ultra-rapide
- Communauté active : Mises à jour fréquentes, corrections rapides
- Open source et gratuit : Totalement gratuit, sans restriction commerciale
Installer Rust et Cargo
Si vous n'avez pas encore installé Rust, voici comment faire rapidement :
# Script d'installation officiel (recommandé)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# Vérifier l'installation
rustc --version
cargo --version
# Mettre à jour Rust
rustup update
Lancez-vous dans l'aventure Rust CLI !
Ces 10 outils sont tous des projets éprouvés par la communauté en 2026. Nous vous conseillons de commencer par ceux que vous utilisez le plus souvent :
Pack débutant recommandé : - 🚀 Productivité quotidienne : eza + bat + starship (amélioration globale de l'expérience terminal) - 🔍 Développement : ripgrep + fd + just (recherche, navigation, exécution de tâches) - 📊 Analyse système : bottom + dust + hyperfine (monitoring, analyse, benchmark)
Pack avancé : - Installez-les tous pour un flux de travail CLI Rust ultime
La valeur d'un outil se révèle à l'usage. Choisissez-en un, et commencez dès aujourd'hui !
Liens utiles :