Find
De Linuxmemo.
(Différences entre les versions)
(→Astuces) |
|||
(6 versions intermédiaires masquées) | |||
Ligne 23 : | Ligne 23 : | ||
==Expression== | ==Expression== | ||
+ | *Force precedence | ||
+ | ( expr ) | ||
+ | |||
+ | *négation | ||
+ | ! expr | ||
+ | -not expr (not POSIX compliant.) | ||
+ | |||
+ | *and | ||
+ | expr1 expr2 | ||
+ | expr1 -a expr2 | ||
+ | expr1 -and expr2 (not POSIX compliant.) | ||
+ | |||
+ | *or | ||
+ | expr1 -or expr2 | ||
+ | expr1 -o expr2 (not POSIX compliant.) | ||
+ | |||
+ | *liste | ||
+ | expr1 , expr2 | ||
==Astuces== | ==Astuces== | ||
+ | *somme de taille de fichiers | ||
find . -iname "*.mkv" | xargs stat -c %s | awk '{a+=$1;print a}' |tail -1 | find . -iname "*.mkv" | xargs stat -c %s | awk '{a+=$1;print a}' |tail -1 | ||
- | + | *Calcul de conversion: | |
kilobytes=$((bytes / 2**10)) | kilobytes=$((bytes / 2**10)) | ||
megabytes=$((bytes / 2**20)) | megabytes=$((bytes / 2**20)) | ||
gigabytes=$((bytes / 2**30)) | gigabytes=$((bytes / 2**30)) | ||
+ | |||
+ | *purge des sauvegardes de plus de 30 jours | ||
+ | find . -maxdepth 1 -and -mtime +30 -and -type d -and ! -iname "main" -execdir rm -rf {} \; |
Version actuelle en date du 30 mai 2014 à 12:40
find [options] [starting path] [expression] find . -type d -iname thumbs
[modifier] options remarquables
- -maxdepth 1
limite a partée 1 au répertoire courant (non récursif)
- -iname "*.gz"
recherche nominative insensible a la caste
- -mtime +30
plus vieux de 30 jour (24h*30)
- -exec rm -f {} \;
suppression du résultat
- -execdir cp {} /home/ \;
find . -iname "*.mkv" -execdir cp -v {} /mnt/popcorn/Video/MKV/ \;
Using both basename and full path in find -exec for cp
[modifier] Expression
- Force precedence
( expr )
- négation
! expr -not expr (not POSIX compliant.)
- and
expr1 expr2 expr1 -a expr2 expr1 -and expr2 (not POSIX compliant.)
- or
expr1 -or expr2 expr1 -o expr2 (not POSIX compliant.)
- liste
expr1 , expr2
[modifier] Astuces
- somme de taille de fichiers
find . -iname "*.mkv" | xargs stat -c %s | awk '{a+=$1;print a}' |tail -1
- Calcul de conversion:
kilobytes=$((bytes / 2**10)) megabytes=$((bytes / 2**20)) gigabytes=$((bytes / 2**30))
- purge des sauvegardes de plus de 30 jours
find . -maxdepth 1 -and -mtime +30 -and -type d -and ! -iname "main" -execdir rm -rf {} \;