fd est un utilitaire de recherche qui offre une alternative simplifiée à la commande classique find. Avec sa syntaxe concise et sa structure de commande simplifiée, fd permet d’effectuer des recherches de fichiers de manière rapide et efficace. Grâce à sa capacité de correspondance de modèle, il optimise également la vitesse de recherche par rapport aux outils standards. Cet article explique comment installer et utiliser fd tant sur les systèmes Linux que sur macOS.
Installation de fd sur Linux
Pour ceux qui souhaitent utiliser fd sur Linux, il n’est pas toujours préinstallé. Il est nécessaire de passer par votre gestionnaire de paquets pour le télécharger et l’installer.
Installation sur Ubuntu
Sur Ubuntu, fd est disponible à partir de la version 19.04. Si vous utilisez une version antérieure, vous devrez le télécharger manuellement. Utilisez les lignes de commande suivantes :
wget https://github.com/sharkdp/fd/releases/download/v7.3.0/fd-musl_7.3.0_amd64.deb
sudo dpkg -i fd-musl_7.3.0_amd64.deb
Installation sur Debian
Pour les utilisateurs de Debian, fd est accessible depuis le référentiel officiel après la version Buster :
sudo apt-get install fd-find
Installation sur Fedora
Les utilisateurs de Fedora peuvent installer fd à l’aide des dépôts officiels, disponibles à partir de la version 28.
Installation sur Arch Linux
Les utilisateurs d’Arch peuvent facilement installer fd à partir des dépôts standard.
Installation sur Gentoo
Pour Gentoo, l’installation de fd se fait via l’ebuild approprié à l’aide de la commande suivante :
Installation sur macOS
Si vous utilisez macOS, commencez par installer Homebrew. Ensuite, la commande ci-dessous vous permettra d’installer fd :
brew install fd
Comment utiliser fd pour rechercher rapidement des fichiers
fd utilise une syntaxe simple qui se compose principalement de la commande fd suivie des critères de recherche. Pour effectuer une recherche par nom de fichier, vous pouvez utiliser :
fd nom_du_fichier
Cette commande effectuera la recherche dans le répertoire courant ainsi que dans tous les sous-répertoires. Si vous souhaitez rechercher dans un chemin spécifique, ajoutez le chemin après votre terme de recherche :
fd nom_du_fichier /chemin/vers/répertoire
Utilisation avancée de fd pour exécuter des commandes
fd permet d’exécuter des commandes sur les résultats trouvés, ce qui en fait un outil puissant. Au lieu de l’option -exec utilisée avec find, fd utilise l’option -x :
fd motif -x commande
Par exemple, pour décompresser tous les fichiers zip trouvés :
fd -e zip -x unzip {}
Voici quelques espaces réservés que vous pouvez utiliser :
- {} : le chemin complet du fichier trouvé.
- {/} : le nom de fichier sans le chemin.
- {//} : le chemin des répertoires parents.
- {.} : le nom du fichier sans son extension.
- {/.} : le nom de base sans extension.
Par exemple, si vous souhaitez convertir un fichier FLAC en OPUS, vous pourrez utiliser :
fd -e flac -x ffmpeg -i {} -c:a libopus {.}.opus
Options utiles de fd
fd offre plusieurs options qui améliorent son utilisation :
- -e : recherche uniquement les fichiers avec l’extension spécifiée.
- –exclude : exclut certains résultats basés sur un modèle.
- –changed-newer-than : filtre les résultats selon la date de modification.
- –changed-older-than : montre les fichiers plus anciens que la date spécifiée.
- -t : limite la recherche à un type de fichier donné.
- -p : recherche à travers tout le chemin et pas seulement dans les noms de fichiers.
- -s : rend la recherche sensible à la casse.
- -H : inclut les fichiers et répertoires cachés.
- -L : suit les liens symboliques lors de la recherche.
FAQ
- Qu’est-ce qui différencie fd de find ? fd est conçu pour être plus intuitif et rapide grâce à sa syntaxe simplifiée, tandis que find est plus détaillé et offre moins d’options de raccourci.
- fd fonctionne-t-il sur Windows ? fd est nativement conçu pour Linux et macOS. Pour l’utiliser sur Windows, vous pourriez avoir besoin d’une couche comme WSL (Windows Subsystem for Linux).
- Est-ce que fd prend en charge les expressions régulières ? Oui, fd prend en charge des motifs basés sur des expressions régulières pour des recherches plus complexes.