[Shell] Rejeter sous-répertoire cmmd find

Résolu
JOBiJOBa2 Messages postés 93 Statut Membre -  
JOBiJOBa2 Messages postés 93 Statut Membre -
Bonjour,
J'ai besoin de rejeter quelques sous-répertoires dans ma recherche.

Exemple:

rep1 (dossier)
   rep2 (dossier)
      fic2.1 (fichier)
   rep3 (dossier)
      fic3.1 (fichier)
   rep4 (dossier)
      fic4.1 (fichier)
      fic4.2 (fichier)
   fic1.1 (fichier)
   fic1.2 (fichier)


Je voudrais rechercher seulement dans rep1, rep2 et exclure rep3 et rep4.

j'ai fait :
find rep2 rep3 -name toto
mais il me manque fic1.1 et fic1.2
Je n'arrive pas à utiliser l'option prune

Besoin d'aide svp.
Merci d'avance.
A voir également:

3 réponses

jipicy Messages postés 41342 Statut Modérateur 4 896
 
Salut,
[rep]$ tree
.
`-- rep1
    |-- fic1.1
    |-- fic1.2
    |-- rep2
    |   `-- fic2.1
    |-- rep3
    |   `-- fic3.1
    `-- rep4
        |-- fic4.1
        `-- fic4.2

4 directories, 6 files

[rep]$ find rep1 \( -name rep3 -prune \) -o \( -name rep4 -prune \) -o \( -type f -print \)
rep1/fic1.2
rep1/fic1.1
rep1/rep2/fic2.1
[rep]$
;-))
1
NikoBellic Messages postés 69 Statut Membre 6
 
ah ouais :) pas mal :)
Plus propre que mon grep -v :P
0
NikoBellic Messages postés 69 Statut Membre 6
 
une solution un peu crade mais pas chère :

find rep1 -name toto | grep -v rep3 | grep -v rep4

:p :p bein quoi j'avais prevenu que CT crade :)
0
JOBiJOBa2 Messages postés 93 Statut Membre 5
 
Merci les gars ça marche.
0