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 08/08/2007, à 15:36

jimmy64

[Résolu en beauté] Comment décompresser une liste d'archives ?

Bonjour,

J'ai un peu honte de poser cette question mais j'en ai marre de galerer...

j'ai un dossier /tmp/Gkrellm-themes/ qui possedent une centaine d'archives .tar.gz
Je voudrais toutes les décompresser (et leurs dossier avec) dans /root/.Gkrellm2/themes/

Seulement je n'y arrive pas....

J'ai essayé : /root/.gkrellm2/themes$# tar xzfv /tmp/Gkrellm2-themes/*.tar.gz

Ceci, comme tout le reste me retourne des erreurs (ne peut trouver nom_de_l'archive dans l'archive...)

Ca me saoule !!!! J'ai essayé dix milles combinaisons sans trouver

Help !!!!

Dernière modification par jimmy64 (Le 08/08/2007, à 16:38)

Hors ligne

#2 Le 08/08/2007, à 15:39

foustala

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

Peutetre le f de xvzf doit etre à la fin car il designe l'option "utiliser le fichier", donc il attend un nom de fichier et pas un v.

Dernière modification par foustala (Le 08/08/2007, à 15:39)

Hors ligne

#3 Le 08/08/2007, à 15:40

Hoper

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

Déja moi je ferai ca en deux fois.... decompresser les .gz d'abbord, et voir les .tar ensuite.. ca changera peut etre pas grand chose mais bon...
si tu te met dans /tmp/Gkrellm-themes/ et que tu fais un gunzip *
il te met des erreurs ? Si oui, c'est peut etre que le nombre d'argument est trop grand, et qu'il faut passer par la commande xargs.

Edit : Tres bonne remarque le f à la fin !

Dernière modification par Hoper (Le 08/08/2007, à 15:41)


Mes tutos et coups de gueule :
http://hoper.dnsalias.net/atdc/
Mastodon: @hoper@framapiaf.org

Hors ligne

#4 Le 08/08/2007, à 15:45

foustala

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

sinon

#!/bin/sh
COMMAND="tar -xvzf"
for i in *.tar.gz; do
  ${COMMAND} "$i"
done

Dernière modification par foustala (Le 08/08/2007, à 15:46)

Hors ligne

#5 Le 08/08/2007, à 15:45

geronimoO

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

rends toi dans ton dossier ou se trouvent tes archives puis tapes:

tar -xzfv * /root/Gkrellm2-themes/

ça devrait fonctionner smile


" Un bon indien est un indien mort "
                   Général Sheridan, cavalerie des Etats Unis.

Hors ligne

#6 Le 08/08/2007, à 15:46

jimmy64

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

Portable:/root/.gkrellm2/themes$ sudo tar xzf /tmp/GKrellM-skins/*.tar.gz

--> erreur parmi tant d'autres du meme genre : "tar: tmp/GKrellM-skins/XenoSilvereX.tar.gz: ne peut être retrouvé dans l'archive."


j'aimerais décompresser directement le tout, pas le faire en deux fois. Pourquoi ? Par faineantise d'abord tongue et ensuite pour ma propre compréhention et mémoire (une fois que je connais la commande, c'est bon, plus besoin de chercher donc autant que ce soit une super-commande, au lieu de plusieures !!!!)

Merci a vous deux !!!

Hors ligne

#7 Le 08/08/2007, à 15:47

foustala

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

geronimoO a écrit :

rends toi dans ton dossier ou se trouvent tes archives puis tapes:

tar -xzfv * /root/Gkrellm2-themes/

le dossier de sortie se precise avec l'option -C

Hors ligne

#8 Le 08/08/2007, à 15:48

foustala

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

jimmy64 a écrit :

Portable:/root/.gkrellm2/themes$ sudo tar xzf /tmp/GKrellM-skins/*.tar.gz

--> erreur parmi tant d'autres du meme genre : "tar: tmp/GKrellM-skins/XenoSilvereX.tar.gz: ne peut être retrouvé dans l'archive."
!

Je viens de faire le test, je n'arrive pas non plus à utiliser les étoiles avec tar, d'où la boucle.

Dernière modification par foustala (Le 08/08/2007, à 15:49)

Hors ligne

#9 Le 08/08/2007, à 15:51

NooP

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

cd /root/.gkrellm2/themes
find /tmp/GKrellM-skins/ -name "*.gz" -exec tar xvfz {} \;

Dernière modification par NooP (Le 08/08/2007, à 15:52)


Votez Macron, vous l'aurez dans le fion !

Hors ligne

#10 Le 08/08/2007, à 15:53

jimmy64

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

Geronimoooooooooooooooooooo tu y etais... Presque !!! big_smile

Memes erreurs !!

root@deus:/tmp/GKrellM-skins# tar -xzfv * /root/.gkrellm2/themes/

--> Mettons qu'il ya 100 archives pour ces 100 archives j'ai pour chaque archive :

tar: Win-Whistle.gkrellm.tar.gz: ne peut être retrouvé dans l'archive.

Bien essayé, essayé encore !!!

Foustala : J'aime pas trop les scripts (ne maitrisant pas...) mais je veux bien essayer si ca ne te dérange pas de commenter tes lignes pour savoir ce que je fais exactement big_smile


Merkiiii

Hors ligne

#11 Le 08/08/2007, à 15:54

jimmy64

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

Noop, peux tu me commenter aussi tes lignes, cela m'interesse beaucoup... je vois ou tu veux en venir, mais je ne comprends pas tout big_smile

Merci !!

Hors ligne

#12 Le 08/08/2007, à 16:03

NooP

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

Pour find : man find

Ensuite :

find [Répertoire à rechercher] -name [Fichiers à rechercher] -exec [Commande] {} \;

{} est replacé par le nom du fichier qui à été trouvé par la commande find
\; Indique à la find que c'est la fin de la commande à executer.

Alors, find passe au fichier suivant et ainsi de suite.

Dernière modification par NooP (Le 08/08/2007, à 16:04)


Votez Macron, vous l'aurez dans le fion !

Hors ligne

#13 Le 08/08/2007, à 16:07

jimmy64

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

L'option de Noop fonctionne nickel smile

Mais je ne comprends pas les fin de lignes.... Ni comment il a agencé la commande find + exec ect... tout est possible avec find + options ?

Hors ligne

#14 Le 08/08/2007, à 16:18

NooP

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

Je vais tenter d'être plus clair :

Il faut séparer la commande find :

find [Répertoire à rechercher] -name [Fichiers à rechercher] -exec [Commande] {} \;

Comme cela :

find /tmp/GKrellM-skins/ -name "*.gz" -exec tar xvfz {} \;
find /tmp/GKrellM-skins/

Dit à find que l'on va effectuer la recherche dans /tmp/GKrellM-skins/

 -name "*.gz"

Dit que l'on veut rechercher tous les fichiers qui se terminent par .gz

 -exec tar xvfz {} \;

Dit d'executer, pour chaque fichier trouvé, la commande tar xvfz en remplacant {} par le nom du fichier qui à été trouvé.

le \; ne sert qu'a indiquer la fin de la commande tar : -exec ......... \;

Pour comprendre ce que fait 'find', execute le sans le -exec :

find /tmp/GKrellM-skins/ -name "*.gz"

puis sans le -name :

find /tmp/GKrellM-skins/

Dernière modification par NooP (Le 08/08/2007, à 16:23)


Votez Macron, vous l'aurez dans le fion !

Hors ligne

#15 Le 08/08/2007, à 16:31

jimmy64

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

Loool en fait c'etait bon, j'avais pigé mais j'ai posté une demi-seconde aprés toi !!!!

Désolé pour ces longues explications mais trés instructives big_smile

Merci encore Noop !!!!!!!

Hors ligne

#16 Le 08/08/2007, à 16:35

jimmy64

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

En fait le find est un ls amelioré à qui on peut passer des parametres et executer une commande tongue

Cette commande est à garder sous le coude mais je pense que l'on ne l'utilise que rarement nan ? tongue

En tout cas merci encore !!!!

Hors ligne

#17 Le 08/08/2007, à 20:56

geronimoO

Re : [Résolu en beauté] Comment décompresser une liste d'archives ?

c'est toujours bon à savoir wink


" Un bon indien est un indien mort "
                   Général Sheridan, cavalerie des Etats Unis.

Hors ligne