fd
fd est une alternative moderne à find, avec une syntaxe plus simple et intuitive. Écrit en Rust, il ignore par défaut les fichiers cachés et respecte les règles .gitignore, tout en colorisant ses résultats.
Installation
Sur Debian/Ubuntu :
sudo apt install fd-findImportant
Sur Debian/Ubuntu, le binaire est installé sous le nom fdfind pour éviter un conflit avec un paquet existant. Un alias fd peut être créé pour retrouver le nom d’origine
Sous Fedora :
sudo dnf install fd-findUtilisation
La syntaxe de base est la suivante :
fd <motif> <chemin>Sans chemin, fd recherche récursivement dans le répertoire courant :
fd motifPar défaut, la recherche se fait uniquement sur le nom du fichier, pas sur le chemin complet.
Options utiles
Recherche sensible à la casse
Par défaut, fd est insensible à la casse. Pour forcer une recherche sensible à la casse :
fd -s motifRecherche dans les fichiers cachés
fd -H motifFiltrer par type
fd -t f motifLes types disponibles sont notamment f (fichier), d (dossier), l (lien symbolique) et x (exécutable).
Limiter la profondeur de recherche
fd -d 1 motifRecherche sur le chemin complet
Pour comparer le motif au chemin entier plutôt qu’au seul nom de fichier :
fd -p motifExécuter une commande sur les résultats
L’option -x permet d’exécuter une commande pour chaque fichier trouvé :
fd -e log -x rmCet exemple supprime tous les fichiers avec l’extension .log.
Filtrer par extension
fd -e shUtilisation avec fzf
fd est souvent utilisé comme moteur de recherche pour fzf, en remplacement de la commande find utilisée par défaut. Il suffit de définir la variable d’environnement suivante, par exemple dans son .bashrc ou .zshrc :
export FZF_DEFAULT_COMMAND='fd'Note
Sur Debian/Ubuntu, remplacez fd par fdfind (ou utilisez l’alias mis en place précédemment)
fzf devient alors plus rapide et respecte automatiquement le .gitignore lors de ses recherches interactives.