Re: [CBLX] Comment éliminer un sous-répertoire lors d'une recherche avec find |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/carrefourblinux Archives
]
Le lundi 15 novembre à 16:40, Emmanuel COUTRIS a écrit :
>
> Salut Philippe et tout le monde,
>
> On Mon, Nov 15, 2010 at 12:54:21PM +0100, Philippe Delavalade wrote:
> > Re.
> >
> > une autre question : peut-on éliminer un sous-répertoire d'une recherche
> > avec find ?
> Oui, tu as plusieurs méthodes:
> 1. te servir du filtrage du shell. En effet, find peut prendre
> plusieurs path dans ses arguments. Et dans ces arguments, le shell
> filtre aussi. En général, on tape toujours "find . -name ..."
> (c'est un peu con car le . dans ce cas est superflu!) mais tu
> pourrais très bien taper un truc du genre: find [^c]* -name ..., et
> là tu élimine tous les fichiers/répertoires commençant par c de
> l'exploration find
> 2. l'utilisation de -path ... -prune. Tu peux coupé l'exploration
> d'une partie de l'arborescence. La syntaxe est:
> find -path ./rep2 -prune -o ...
> IMPORTANT: si tu oublie le -o, rien ne s'affichera.
>
> Remarques:
> - si tu ne veux pas que que le nom du/des répertoire/s exclus
> soient affiché,il faut ajouter un -print à la fin de l'expression find
> - après le -path, c'est un pattern qui est comparé par rapport aux
> chemins spécifiés. Par exemple:
> find [^c]* -path ./exemples -prune -o -name "*.c" -print
> affichera tout de même les .c qui se trouvent dans
> exemples. Pourquoi? Car la comparaison du -path échoue: aucun des
> chemins listés ne commencent par ./
>
> Voilà... j'espère que je n'ai pas été trop obscur...
>
> Bon find!
Merci de ta réponse ; ça marche bien même sans le -print dont d'ailleurs je
ne comprends pas bien l'utilité...
--
Philippe
---
--
CarrefourBLinuX MailingListe
Pour obtenir de l'aide, envoyez le sujet help à:
carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
Archives:
http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux