Find : ne pas inclure les sous répertoires ?
Résolu/Fermé
A voir également:
- Find : ne pas inclure les sous répertoires ?
- Ava find - Télécharger - Divers Utilitaires
- Partition find and mount - Télécharger - Récupération de données
- An exception occurred in the driver: could not find driver - Forum PHP
- Find junk files - Télécharger - Nettoyage
- Easy find - Télécharger - Divers Utilitaires
2 réponses
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
7 févr. 2009 à 10:33
7 févr. 2009 à 10:33
Salut,
$ find duddy67/ -name '*.txt' | sort duddy67/dir1/fic1.txt duddy67/dir1/fic2.txt duddy67/dir1/fic3.txt duddy67/dir1/fic4.txt duddy67/dir1/fic5.txt duddy67/dir1/fic6.txt duddy67/dir2/fic1.txt duddy67/dir2/fic2.txt duddy67/dir2/fic3.txt duddy67/dir3/fic1.txt duddy67/dir3/fic2.txt duddy67/dir3/fic3.txt $ find duddy67/ -path 'duddy67/dir2' -prune -o -name '*.txt'|sort duddy67/dir1/fic1.txt duddy67/dir1/fic2.txt duddy67/dir1/fic3.txt duddy67/dir1/fic4.txt duddy67/dir1/fic5.txt duddy67/dir1/fic6.txt duddy67/dir2 duddy67/dir3/fic1.txt duddy67/dir3/fic2.txt duddy67/dir3/fic3.txt $ find duddy67/dir1 -path 'duddy67/dir2' -prune -o -name '*.txt' -exec mv -v {} duddy67/dir3 \; `duddy67/dir1/fic5.txt' -> `duddy67/dir3/fic5.txt' `duddy67/dir1/fic1.txt' -> `duddy67/dir3/fic1.txt' `duddy67/dir1/fic6.txt' -> `duddy67/dir3/fic6.txt' `duddy67/dir1/fic3.txt' -> `duddy67/dir3/fic3.txt' `duddy67/dir1/fic4.txt' -> `duddy67/dir3/fic4.txt' `duddy67/dir1/fic2.txt' -> `duddy67/dir3/fic2.txt' $ find duddy67/ -name '*.txt' | sort duddy67/dir2/fic1.txt duddy67/dir2/fic2.txt duddy67/dir2/fic3.txt duddy67/dir3/fic1.txt duddy67/dir3/fic2.txt duddy67/dir3/fic3.txt duddy67/dir3/fic4.txt duddy67/dir3/fic5.txt duddy67/dir3/fic6.txt
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
7 févr. 2009 à 10:34
7 févr. 2009 à 10:34
Salut,
Utilises plutôt l'option "-maxdepth n" :
Par exemple pour exclure le rep "dir2" de ta recherche :
Utilises plutôt l'option "-maxdepth n" :
find /path/dir1 -maxdepth 1 -name '*.txt' -exec mv {} /path/dir1/dir2 \; 2>/dev/nullL'option "-prune" étant beaucoup plus complexe qu'elle n'en a l'air à utiliser et n'a pas du tout l'utilité de la description faite par le "man find".
Par exemple pour exclure le rep "dir2" de ta recherche :
find /path/dir1 \( -name dir2 -prune \) -o \( -name '*.txt' \) -exec mv {} /path/dir1/dir3 \; 2>/dev/nulldevrait le faire...