• présentation 

La commande find sous Linux est un outil puissant permettant de rechercher des fichiers et des répertoires dans un système de fichiers selon divers critères tels que le nom, la taille, la date de modification, le type, les permissions, etc

  • Syntaxe de la commande :

 Find [chemin] [options] [expression]  

 

Chemin : le répertoire à partir duquel commencer la recherche

Options : diverses options pour personnaliser la recherche.

 

Expression : critères spécifiques pour filtrer les résultats tels que le nom de fichier, le type, les permissions, la taille, etc.

  • Principales options : 
option description
-name Recherche par nom(sensible à la case)
-iname Recherche par nom (insensible à la case)
-type Recherche par type ( f = fichier ; d= répertoire)
-size Recherche par taille
-mtime Recherche par date de modification (en jours)
-perm Recherche par permission ex : -perm 755
-user Recherche les fichiers appartenant à un user donné
-exec Exécuter une commande sur les fichiers trouvés
-delete Supprimer les fichiers trouvés ( à utiliser avec prudence)
  • Démonstration :  

Trouver des fichiers par nom

Trouvez tous les fichiers nommés test.txt dans le répertoire /home.

Explication :

/home : répertoire de recherche

-name "test.txt" : recherche des fichiers avec le nom exact.

 

Rechercher des fichiers avec des extensions spécifiques :

Trouvez tous les fichiers avec l'extension .log dans /var/log.

 

Trouver des répertoires

Trouvez tous les répertoires nommés backup dans  / .

 

Rechercher par taille 

Trouvez tous les fichiers de plus de 50 Mo dans  /home.

-size +50M : recherche les fichiers de taille supérieure à 50 mégaoctets.

 

Rechercher par utilisateur

Trouvez tous les fichiers appartenant à l’utilisateur alice dans /projet

 

Trouver des fichiers modifiés récemment

Trouvez tous les fichiers modifiés au cours des 7 derniers jours dans /var/www

 

-mtime -7 : recherche des fichiers modifiés au cours des 7 derniers jours.

 

 

Trouver et exécuter une commande sur les résultats

 Supprimez tous les fichiers .tmp dans /tmp

-exec rm -f {} \; : exécute la commande rm-f sur chaque fichier trouvé.

Retour à l'accueil