Re: [CBLX] Comment éliminer un sous-répertoire lors d'une recherche avec find |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/carrefourblinux Archives
]
Philippe Delavalade wrote on Tue, Nov 16, 2010 at 12:47:21PM +0100
> 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é...
-print est la commande par défaut de find. En combinaison avec autre
chose il peut être nécessaire de la préciser explicitement.
dom
--
---
--
CarrefourBLinuX MailingListe
Pour obtenir de l'aide, envoyez le sujet help à:
carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
Archives:
http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux