fd - Une alternative simple et rapide à la commande Find
La plupart des utilisateurs de Linux connaissent bien la commande find et les nombreux cas dans lesquels elle peut être utilisée. Aujourd'hui, nous allons passer en revue une alternative à la commande find, appelée fd.
fd est un outil simple, rapide et convivial destiné à fonctionner simplement plus rapidement que find. Il n'est pas destiné à remplacer complètement find, mais plutôt à vous offrir une alternative facile à utiliser et légèrement plus rapide.
Caractéristiques du fd
Certaines des fonctionnalités notables de fd :
- Syntaxe facile à utiliser – fd *pattern* au lieu de find -iname *pattern*.
- La sortie colorée est similaire à celle de la commande ls.
- Performances rapides. Les benchmarks du développeur sont disponibles ici.
- Recherche intelligente avec insensible à la casse par défaut et passe à la casse si le modèle contient un symbole majuscule.
- Ne recherche pas par défaut les fichiers et répertoires cachés.
- Ne regarde pas .gitignore par défaut.
- Conscience Unicode.
Comment installer fd sous Linux
Nous allons voir comment installer fd dans différentes distributions Linux à l'aide du gestionnaire de packages par défaut, comme indiqué.
sudo apt install fd-find [On Debian, Ubuntu and Mint]
sudo yum install fd-find [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
sudo emerge -a sys-apps/fd [On Gentoo Linux]
sudo pacman -S fd [On Arch Linux]
sudo zypper install fd [On OpenSUSE]
sudo apk add fd [On Alpine Linux]
Comment utiliser fd sous Linux
Semblable à la commande find, fd a de nombreux cas d'utilisation, mais commençons par vérifier les options disponibles :
fd -h
OR
fd --help
Jetons un coup d’œil à quelques exemples. Vous pouvez exécuter fd sans aucun argument, le résultat est très similaire à la commande ls -R.
fd
Dans les prochains exemples fd, j'utiliserai une installation WordPress par défaut située dans /var/www/html/
pour rechercher différents fichiers et dossiers.
Dans l'exemple ci-dessous, j'ai imprimé uniquement les 10 premiers résultats pour la sortie la plus courte en utilisant la redirection de canal avec la commande head.
fd | head
Rechercher tous les fichiers JPG sous Linux
Disons que nous voulons trouver tous les fichiers jpg. Nous pouvons utiliser l'indicateur « -e »
pour filtrer par extension de fichier :
fd -e jpg
Si vous souhaitez spécifier un répertoire de recherche, il vous suffit de le donner en argument :
fd <pattery> <directory>
Rechercher une chaîne dans tous les fichiers PHP sous Linux
L'indicateur « -e »
peut être utilisé en combinaison avec un modèle comme indiqué :
fd -e php index
La commande ci-dessus recherchera les fichiers avec une extension .php
et contiendra la chaîne « index » :
Si vous souhaitez exclure certains résultats, vous pouvez utiliser l'indicateur « -E »
comme indiqué :
fd -e php index -E wp-content
Cette commande recherchera tous les fichiers avec l'extension php, contenant la chaîne « index » et exclura les résultats du répertoire « wp-content ».
Rechercher tous les fichiers JPG et modifier l'autorisation
Tout comme find, vous pouvez utiliser les arguments -x
ou --exec
pour exécuter une commande parallèle avec les résultats de la recherche.
Voici un exemple où nous utiliserons chmod pour modifier les autorisations des fichiers image
fd -e jpg -x chmod 644 {}
Ce qui précède trouvera tous les fichiers avec l'extension jpg et exécutera chmod 644
.
Voici quelques explications utiles et l’utilisation des parenthèses :
{}
– Un espace réservé qui sera modifié avec le chemin du résultat de la recherche (wp-content/uploads/01.jpg).{.}
– similaire à{}
, mais sans utiliser l'extension de fichier (wp-content/uploads/01).{/}
: un espace réservé qui sera remplacé par le nom de base du résultat de la recherche (01.jpg).{//}
: répertoire parent du chemin découvert (wp-content/uploads).{/.}
: uniquement le nom de base, sans l'extension (01).
Conclusion
Il s'agissait d'un bref aperçu de la commande fd, que certains utilisateurs peuvent trouver plus facile à utiliser et plus rapide. Comme mentionné plus tôt dans cet article, fd n'est pas destiné à remplacer complètement find, mais plutôt à fournir une utilisation simple, une recherche plus facile et de meilleures performances. Fd ne prend pas beaucoup de place et constitue un outil intéressant à avoir dans votre arsenal.