Outils pour utilisateurs

Outils du site


linux:find (lu 59918 fois)

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
linux:find [16-09-2014 23:04]
edmc73 [Commande utile]
linux:find [07-05-2023 20:23] (Version actuelle)
edmc73 [Commande utile]
Ligne 14: Ligne 14:
 A la différence de **find** qui fait une recherche en temps réel, **locate** se met à jour une fois par jour via la commande **updatedb** A la différence de **find** qui fait une recherche en temps réel, **locate** se met à jour une fois par jour via la commande **updatedb**
  
-Purger ses vieux fichiers de plus de 10 jours (par exemple)+__ Purger ses vieux fichiers de plus de 10 jours qui commence par 'export' (par exemple) __
  
 Vérifier avant de supprimer Vérifier avant de supprimer
-  find /home/moi/backup -type f -mtime +10 -exec echo "rm -f {}" \;+  find /home/moi/backup -type f -name 'export*' -mtime +10 
 + 
 +Ajouter simplement **-delete** pour supprimer  
 +  find /home/moi/backup -type f -name 'export*' -mtime +10 -delete 
 + 
 +Un autre exemple pour supprimer tous les liens symboliques à supprimer dans des répertoires en se limitant à une recherche dans 2 sous-dossiers 
 +  find daily.* -maxdepth 2 -type l -delete 
 + 
 + 
 +Pour les anciennes version 
 + 
 +Vérifier avant de supprimer 
 +  find /home/moi/backup -type f -name 'export*' -mtime +10 -exec echo "rm -f {}" \;
 Passer à l'action pour de vrai Passer à l'action pour de vrai
-  find /home/moi/backup -type f -mtime +10 -exec rm -f {} \;+  find /home/moi/backup -type f -name 'export*' -mtime +10 -exec rm -f {} \; 
 + 
 + 
 + 
 ===== Utilisation de la commande find ===== ===== Utilisation de la commande find =====
  
Ligne 42: Ligne 58:
 | -group | Recherche par appartenance à un groupe.      | | -group | Recherche par appartenance à un groupe.      |
 | -size  | Recherche par taille de fichier.             | | -size  | Recherche par taille de fichier.             |
-| -atime | Recherche par date de dernier accès.         +| -atime | Recherche par date de dernier accès en jours.| 
-| -mtime | Recherche par date de dernière modification. | +| -mtime | Recherche par date de dernière modification en jours. | 
-| -ctime | Recherche par date de création.              |+| -ctime | Recherche par date de création en jours.              | 
 +| -amin  | Recherche par date de dernier accès en minutes.| 
 +| -mmin  | Recherche par date de dernière modification en minutes. | 
 +| -cmin  | Recherche par date de création en minutes.              |
 | -perm  | Recherche par autorisations d'accès.         | | -perm  | Recherche par autorisations d'accès.         |
 | -links | Recherche par nombre de liens au fichier.    | | -links | Recherche par nombre de liens au fichier.    |
Ligne 97: Ligne 116:
      
 affiche tous les fichiers se terminant par ''.tex'' ou ''.dvi''. affiche tous les fichiers se terminant par ''.tex'' ou ''.dvi''.
 +
 +.
 +
 +
 +On peut aussi afficher les infos que l'on veut avec printf
 +  find . -printf '%f %u:%g %a'
 +Affichera le nom du fichier seulement suivi du user:group et dernière date d'accès
 +
 +Si on veux savoir combien de fichiers sont utilisés par utilisateur
 +  find . -printf '%u' | sort | uniq -c
 +  
 +===== Alternatives =====
 +
 +**find** est récursif. Si vous voulez supprimer une liste de fichier dans un seul répertoire et donc sans supprimer les fichiers des sous répertoires, utilisez la commande **xargs**
 +
 +  ls *fichier*.txt | xargs rm
 +
 +
 +Sinon utilisez l'option ''-maxdepth''
 +  find . -maxdepth 1 -type f
  
linux/find.1410901442.txt.gz · Dernière modification: 16-09-2014 23:04 de edmc73