Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 04/04/2010, à 15:18

Arclight

Exclure des sous-répertoires avec Find ?

Bonjour,

Je bloque depuis un petit moment sur le problème suivant :

Je souhaite créer des liens symboliques vers une sélection de sous-répertoires. Je pensais donc utiliser une commande du type :

find /photos -type d -print0 | xargs -0 -n 1 ln -s

Ca marche très bien, SAUF que des sous-répertoires apparaissent dans le résultat du find et que je souhaite les exclure. Et là, je sèche. smile

Le find me renvoie toutes les lignes du style :

/photos/Yo/Lavaur 2007.02.22/
/photos/Yo/Lavaur 2007.02.22/@eaDir/
/photos/Yo/Lavaur 2007.02.22/@eaDir/dsc03818.jpg
/photos/Yo/Lavaur 2007.02.22/@eaDir/dsc03819.jpg

Rien d'étonnant : @eaDir et dsc03818.jpg sont bien des sous-répertoires générés automatiquement par un programme tiers et qui contiennent des miniatures qui ne m'intéressent pas.

J'ai donc tenté un truc du style :

find /photos -type d ! -name "@eaDir"

Résultat : il ignore le répertoire en question, mais pas les répertoires qu'il contient :

/photos/Yo/Lavaur 2007.02.22/
/photos/Yo/Lavaur 2007.02.22/@eaDir/dsc03818.jpg
/photos/Yo/Lavaur 2007.02.22/@eaDir/dsc03819.jpg

Comment pourrais-je ignorer tout ces répertoires @eaDir, ainsi que leur contenu ?

D'avance merci !
Yoann

Hors ligne

#2 Le 04/04/2010, à 15:38

Michel Leunen

Re : Exclure des sous-répertoires avec Find ?

Et avec l'option -maxdepth, tu as essayé. Si tu dois rechercher dans /photos/Yo/Lavaur, ton maxdepth est de 3.

find /photos -maxdepth 3 ...

Je ne sais pas si ça t'aide vu que tu ne dis rien de la structure de tes répertoires.


Michel Leunen
http://linux.leunen.com

Hors ligne

#3 Le 04/04/2010, à 15:46

Watael

Re : Exclure des sous-répertoires avec Find ?

find /photos -type d ! -wholename "*@eaDir*"

Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#4 Le 04/04/2010, à 18:00

Arclight

Re : Exclure des sous-répertoires avec Find ?

Nickel ! -wholename résoud bien le problème !

J'avais pensé  à Maxdepth aussi, mais la structure est hétérogène, donc ça n'est pas applicable et j'ai oublié de le préciser.

Merci encore !

Hors ligne

#5 Le 04/04/2010, à 18:31

Michel Leunen

Re : Exclure des sous-répertoires avec Find ?

Regarde aussi du côté de -path qui a pas mal de possibilité aussi.


Michel Leunen
http://linux.leunen.com

Hors ligne