On a souvent besoin de rechercher des éléments dans l’arborescence du système de fichiers pour différentes raisons, pour savoir comment sont fixées les variables (PATH, MANPATH...), pour effectuer un archivage ou simplement pour trouver une information comme la liste des différents liens sur un élément. Le principal utilitaire qui permet une recherche à partir de quasiment tous les critères enregistrés dans l’inode est la commande find.

La commande find recherche des éléments dans l’arborescence et permet d’afficher le résultat ou d’exécuter une commande. La syntaxe est inhabituelle avec deux arguments dont le premier définit le point de départ de la recherche, et le second comprend la liste des critères de recherche et des actions à exécuter. On peut aussi utiliser une liste de répertoires séparés par des espaces et utilisés les uns après les autres. Les critères de recherche sont traités dans l’ordre dans lequel ils apparaissent. La majorité des critères sont de la forme -option valeur option précise le nom du critère et valeur correspond à son argument (nom de fichier, entier, commande...) mais certains critères (paramétrage, affichage) n’ont pas d’argument et s’écrivent simplement sous la forme -option.

Le principe de find est le suivant: parcours récursif de l’arborescence à partir du répertoire passé en premier argument, et pour chaque élément, test des critères donnés en arguments tant que le résultat est vrai. Dès qu’un critère n’est pas satisfait, la commande find passe à l’élément suivant de l’arborescence.

La commande find est souvent utilisée pour rechercher des fichiers par leur nom grâce au critère -name fich qui est satisfait pour toute entrée dont le nom relatif est fich. La commande find reconnaît les caractères d’interprétation des noms de fichiers du shell (*, ? et [...]) pour la comparaison du nom. Mais dès qu’un argument fich comprend l’un de ces « jokers », il faut le donner entre simples quotes ou doubles quotes (ŽfichŽ ou "fich") pour éviter que ce soit le shell qui interprète ces caractères spéciaux.  
 
Retour à la page de cours