all:bibles:linux:commandes:find
Table des matières
find
Options
- a : and
- o : or
- ! : négation
- follow : pour suivre les liens symboliques
- -mtime : ancienneté des modifications du fichier (en jour)
- -name : nom du fichier
- -iname : nom du fichier indépendamment majuscule ou miinuscule
- -prune : si le fichier est un répertoire ne descend pas dedans
Exemples
Fichiers selon la taille
Lister les fichiers de plus de 50 Mo
find / -type f -size +50M
Lister les fichiers de plus de 1 Go
find / -type f -size +1G
Fichier selon la date de modification
Lister les fichier de plus de 10 jours
find . -mtime +10
Lister les fichier de 10 jours
find . -mtime 10
Lister les fichier de moins de 10 jours
find . -mtime -10
Supprimer les fichiers de plus de 30 jours
find . -mtime +30 -exec rm -f {} \;
Fichier selon le nom
Lister tous les fichiers Word
find . -name "*.docx"
Lister les fichiers dont le nom contient une chaine de caractères indépendamment majuscule/minuscule
find . -iname "*toto*"
Fichier selon le contenu
Lister les fichiers contenant une chaîne de caractère
find . –type f –exec grep "chaine" {} \ ; -print
Lister les fichiers contenant une chaîne de caractère sauf les *.log et *.txt
find . –type f !-name "*.log" -a ! –name "*.txt" -exec grep "chaine" {} \; -print
Liens brisés
Lister les liens brisés
find / -type l | perl -lne 'print if ! -e'
Renommage fichiers
fichier *.html.orig en *.html
find . -name "*.html.orig" -exec bash -c 'mv "$1" "${1%.html.orig}.html"' _ {} \;
fichier *.orig en *.html
find . -name "*.orig" -exec bash -c 'mv "$1" "${1%.orig}.html"' _ {} \;
Suppression répertoires
find . -type d -name .git -prune -exec rm -rf {} \;
L'option -prune évite que l'on essaye de parcourir le répertoire que l'on vient de supprimer.
all/bibles/linux/commandes/find.txt · Dernière modification : de omeylhoc
