Home » 30 Commandes find sous Linux pour les Débutants

30 Commandes find sous Linux pour les Débutants

La commande find est un outil très puissant sous Linux qui permet de rechercher des fichiers et des répertoires selon différents critères. Ce tutoriel vous présente 30 commandes find pratiques pour maximiser votre productivité. Pour chaque exemple, nous utilisons l’utilisateur geecniger et la machine ubuntu. Toutes les recherches se font dans le répertoire /home/geecniger/.

Conseil : Pour faciliter la copie des commandes, cliquez sur le bouton de copie à côté de chaque commande.

Table of Contents

1. Rechercher un fichier par nom

Pour trouver un fichier spécifique nommé geec.txt, utilisez :

find /home/geecniger/ -name "geec.txt"

2. Recherche insensible à la casse

Cette commande trouve le fichier geec.txt ou GEEC.txt sans faire de distinction entre majuscule et minuscule.

find /home/geecniger/ -iname "geec.txt"

3. Trouver tous les fichiers avec une extension spécifique

Pour rechercher tous les fichiers .txt dans le répertoire de l’utilisateur geecniger, utilisez :

find /home/geecniger/ -name "*.txt"

4. Rechercher des fichiers par taille

Cette commande trouve les fichiers de plus de 100 Mo dans le répertoire :

find /home/geecniger/ -size +100M

5. Trouver des fichiers plus petits qu’une taille donnée

Pour rechercher des fichiers de moins de 1 Ko :

find /home/geecniger/ -size -1k

6. Rechercher des fichiers modifiés il y a plus de 7 jours

Cette commande trouve les fichiers modifiés il y a plus de 7 jours :

find /home/geecniger/ -mtime +7

7. Trouver des fichiers modifiés récemment (dernières 24h)

Pour trouver les fichiers récemment modifiés :

find /home/geecniger/ -mtime -1

8. Rechercher des fichiers créés il y a plus de 30 jours

Pour rechercher des fichiers créés il y a plus de 30 jours :

find /home/geecniger/ -ctime +30

9. Rechercher des fichiers par permissions

Pour rechercher des fichiers avec des permissions spécifiques, comme 777 :

find /home/geecniger/ -perm 777

10. Rechercher des fichiers appartenant à un utilisateur spécifique

Pour rechercher tous les fichiers appartenant à l’utilisateur geecniger :

find /home/geecniger/ -user geecniger

11. Trouver des fichiers vides

Pour rechercher des fichiers vides :

find /home/geecniger/ -empty

12. Trouver des fichiers exécutables uniquement

Pour rechercher uniquement les fichiers exécutables :

find /home/geecniger/ -executable

13. Rechercher uniquement des répertoires

Pour rechercher des répertoires uniquement :

find /home/geecniger/ -type d

14. Rechercher uniquement des fichiers

Cette commande ne recherchera que des fichiers (pas de répertoires) :

find /home/geecniger/ -type f

15. Supprimer des fichiers trouvés

Pour supprimer les fichiers .tmp trouvés :

find /home/geecniger/ -name "*.tmp" -delete

16. Exécuter une commande sur chaque fichier trouvé

Cette commande supprime tous les fichiers .txt trouvés :

find /home/geecniger/ -name "*.txt" -exec rm {} \;

17. Rechercher des fichiers accédés récemment

Pour rechercher les fichiers accédés dans les 10 derniers jours :

find /home/geecniger/ -atime -10

18. Limiter la profondeur de recherche

Pour limiter la recherche au répertoire courant :

find /home/geecniger/ -maxdepth 1 -name "*.log"

19. Rechercher des fichiers modifiés en minutes

Pour rechercher des fichiers modifiés au cours des 60 dernières minutes :

find /home/geecniger/ -mmin -60

20. Rechercher des fichiers cachés

Cette commande trouve tous les fichiers cachés :

find /home/geecniger/ -name ".*"

21. Rechercher des fichiers modifiés par un programme

Pour rechercher des fichiers modifiés par un programme et les lister :

find /home/geecniger/ -mmin -60 -exec ls -lh {} \;

22. Rechercher des fichiers avec des liens symboliques cassés

Cette commande identifie les liens symboliques cassés :

find /home/geecniger/ -xtype l

23. Rechercher et lister les fichiers du propriétaire root

Pour rechercher tous les fichiers appartenant à root :

find / -user root

24. Rechercher des fichiers d’un type spécifique et exclure certains répertoires

Cette commande exclut certains répertoires lors de la recherche :

find /home/geecniger/ -name "*.log" -not -path "/home/geecniger/exclude/*"

25. Rechercher des fichiers modifiés dans les X derniers jours et les supprimer

Pour rechercher des fichiers modifiés dans les 30 derniers jours et les supprimer :

find /home/geecniger/ -mtime -30 -exec rm {} \;

26. Rechercher des fichiers avec des noms correspondant à un motif regex

Utilisez cette commande pour rechercher des fichiers correspondant à une expression régulière :

find /home/geecniger/ -regex ".*\.(log|txt)$"

27. Rechercher des fichiers d’un certain propriétaire et d’une certaine taille

Pour rechercher des fichiers appartenant à geecniger et de plus de 50 Mo :

find /home/geecniger/ -user geecniger -size +50M

28. Trouver les fichiers ayant des permissions différentes de 644

Pour rechercher des fichiers dont les permissions sont différentes de 644 :

find /home/geecniger/ ! -perm 644

29. Trouver des fichiers modifiés par un certain programme (utilisé avec -exec)

Pour rechercher des fichiers modifiés récemment et exécuter une commande dessus :

find /home/geecniger/ -mmin -60 -exec ls -lh {} \;

30. Rechercher des fichiers dans plusieurs répertoires

Pour rechercher des fichiers .php dans plusieurs répertoires :

find /home/geecniger/ /var/www/ -name "*.php"

Ces 30 astuces vous permettront de tirer le meilleur parti de la commande find sous Linux. De la recherche basique à l’exécution de commandes automatisées, cet outil vous fera gagner du temps et améliorera votre productivité.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Retour en haut