vous dites généralement trouver où commencer la recherche et ce qu'il faut rechercher. Ainsi, la syntaxe des chemins à rechercher et ce que vous essayez de trouver est différente.
Pour le cas d'utilisation que vous mentionnez, supposons que vous souhaitiez trouver le passwd
fichier dans /etc
:
find /etc/ -name passwd
vous dites "à partir de etc, recherchez un fichier dont le nom estpasswd
si vous ne spécifiez pas de critères (ou d '"options" dans le langage de recherche), ce que fait la recherche, c'est qu'elle démarre dans le ou les chemins que vous spécifiez et trouve tous les fichiers et répertoires en dessous, récursivement. Ainsi, les options "filtrent" ces fichiers pour affiner ce que vous recherchez.
Trouvez tous les fichiers JPG n'importe où dans votre système de fichiers:
find / -name "*jpg"
L'utilisation de guillemets dans vos options est recommandée car sinon l'expansion du shell peut vous causer des maux de tête.
Trouvez tous les fichiers pdf, quel que soit le cas, dans les documents ou les téléchargements:
find Documents/ Downloads/ -iname "*pdf"
Si vous le faites man find
et faites défiler jusqu'à TESTS, vous trouverez tous les "critères" que find peut utiliser pour affiner votre recherche. Vous pouvez rechercher des fichiers avec des noms de fichiers spécifiques, appartenant à des utilisateurs ou des groupes spécifiques, ayant une autorisation de fichier spécifique, étant d'un type spécifique (par exemple, -type d
ne trouveront que des répertoires, tandis que -type f
ne trouveront que des fichiers simples, à l'exclusion des répertoires), des fichiers plus récents ou plus anciens que un nombre spécifique de jours (ou minutes), des fichiers vides, exécutables, etc.
Dans la page de manuel de find, vous trouverez également une section intitulée ACTIONS, celles-ci peuvent aller après les critères et seront déclenchées par n'importe quel fichier qui correspond à tous les critères. Vous pouvez donc avoir à find
faire des choses comme supprimer des fichiers qu'il trouve, exécuter des commandes arbitraires sur eux, etc.
Mais bien sûr, la syntaxe de base reste:
find [starting path(s)] [conditions or criteria]