Swisslinux.org

− Le carrefour GNU/Linux en Suisse −

 

Langue

 

Le Forum

Vous n'êtes pas identifié.

#1 13 Feb 2009 12:50:43

VickR
Affranchi(e)
 
Date d'inscription: 28 Jan 2009
Messages: 9

Désarchiver en masse grâce à find

Salut à tous,

J'ai une grande quantité d'archive 7z  à désarchiver et plutôt que de le faire à la main, j'aimerais utiliser la commande find avec un truc du style:

Code:

for i in `find . -regex '.*\/.+\.7z'`;do 7z x $i;done

ou équivalent:

Code:

find . -regex '.*\/.+\.7z' -exec 7z x {} --verbose \;

Le problème est que ces commandes désarchivent dans '.' et pas dans '.*\/.+\.' (En gros j'aimerais désarchiver là où il y a l'archive et pas là d'où est lancé la commande find).

Est-ce que quelqu'un a une idée?

Très bonne journée,
VickR

Dernière modification par VickR (13 Feb 2009 16:26:46)

Hors ligne

 

#2 13 Feb 2009 17:01:31

VickR
Affranchi(e)
 
Date d'inscription: 28 Jan 2009
Messages: 9

Re: Désarchiver en masse grâce à find

Ah, je crois que j'ai trouvé ma réponse dans la manpage de find. Ça me donne alors un truc du style:

Code:

find . -regex '.*\/.+\.7z' -execdir 7z x {} \;

Reste plus qu'à trouver comment je fais la même chose avec la boucle for et ça sera le paradis smile

Hors ligne

 

Pied de page des forums

Powered by FluxBB