Cette commande permet de trouver des fichiers depuis une racine spécifiée. Par exemple, la commande suivante affichera tous les fichiers ayant un t dans leur nom, et ceci dans tous les sous-répertoires du répertoire courant, y compris ce dernier:
Notez les guillemets qui empêchent une interprétation de la regexp par le shell32.
Cette commande est très puissante. On peut lui faire rechercher des fichiers en fonction d'un utilisateur ou d'un groupe particulier, en connaissant une partie du nom, en fonction de sa taille, de sa date de création ou de dernière modification ou de son mode (les protections UNIX, voir chmod). On peut également exécuter une commande (ce qui sera souvent peu rapide mais fort utile) sur les fichiers trouvés.
Voici un exemple un peu plus complexe qui recherche depuis la racine tous les fichiers core appartenant à l'utilisateur schaefer et qui sont plus gros que 500 kilo-octets ou modifiés il y a plus de 7 jours, sauf s'ils appartiennent au groupe keep. Les fichiers trouvés sont automatiquement effacés. Notez l'usage des parenthèses (précédées d'un backslash pour éviter leur interprétation par le shell). Remarquez également la notation utilisée pour le ou et le fait que la conditionnelle et s'exprime par simple juxtaposition. Enfin admirez la syntaxe très particulière de l'exécution d'une commande.
find / -name 'core' -user schaefer \( -size +500k -o -mtime +7 \) \! -group keep -exec rm {} \;