Find

De Octet.ca

Documentation pour la commande find sous GNU/Linux

Sommaire

[modifier] Exécuter une commande

Pour exécuter une commande avec les résultats du find comme arguments:

find  ./ -name 'fichier*' -exec commande {} \;

[modifier] Pour déplacer les fichiers

find ./ -type f -name "fichier*"  -exec  mv -i {} /repertoire/destination \;


[modifier] Pour bzip chaque fichier

Chaque fichier va être compressé et avoir l'extension 'bz2':

find ./ -type f -name "fichier*"  -exec  bzip2 {} +

[modifier] Identifier les vidéos

Imprime les chemins d'accès des vidéos:

find ./ -type f -exec file -N -i -- {} + | sed -n 's!: video/[^:]*$!!p'


[modifier] Temporel

[modifier] Identifier fichiers modifiés il y a exactement N jours

find  ./  -mtime N -name "*.JPG"

[modifier] Identifier fichiers modifiés il y a plus ou moins de N jours

Plus de N jours:

find  ./  -mtime +N -name "*.JPG"

Moins de N jours:

find  ./  -mtime -N -name "*.JPG"

[modifier] Identifier fichiers modifiés a une date spécifique

To find all files modified on the 7th of June, 2007:

$ find . -type f -newermt 2007-06-07 ! -newermt 2007-06-08

[modifier] Volume / Espace disque

[modifier] Répertoires vides

find /path/to/dest -type d -empty

[modifier] Fichiers vides

find  /path/to/dest -type f -empty

[modifier] Fichiers < 1 Mo

 find . -type f -size -1M

[modifier] Fichiers == N octets

find /home/ -type f -size 6579b
  • b – for 512-byte blocks (this is the default if no suffix is used)
  • c – for bytes
  • w – for two-byte words
  • k – for Kilobytes (units of 1024 bytes)
  • M – for Megabytes (units of 1048576 bytes)
  • G – for Gigabytes (units of 1073741824 bytes)


[modifier] Identifier les fichiers correspondants à une chaîne de caractères, ou à une autre

find  /path/to/dest  \( -name "match1*" -o -name "match2*"  \)
Outils personnels