find dispose de nombreuses options pour limiter les fichiers selon leurs caractéristiques : taille, date de modification, propriétaire, type, etc.
La syntaxe générale est :
find chemin [chemin2...] [options] [action]
Voici quelques exemples d'utilisation :
Impression de la liste des fichiers sous /home qui ont été modifiés dans les 7 derniers jours :
find /home -type f -a -mtime -7 -print
Recherche de la chaîne Wikipedia dans tous les fichiers terminés par .txt sous /home :
find /home -type f -a -name '*.txt' -exec grep -H Wikipedia {} \;
Suppression des fichiers sous /tmp de plus de 14 jours ou nommés core :
find /tmp -type f -a \( -mtime +14 -o -name 'core' \) -exec rm {} \;
Recherche du fichier nom.txt récursivement à partir du répertoire courant et écrit le résultat dans le fichier sortie.txt situé sur le répertoire spécifié par chemin :
find . -name "nom.txt" -print > ./chemin/sortie.txt
En raison de la possibilité d'espaces dans les noms de fichiers (par exemple /tmp/ /etc/passwd), on prendra garde à des constructions telles que :
find /tmp -type f -a -mtime +14 | xargs rm