une commande tar m’enerve :
tar xvfz *.gz me donne un truc pour chacun de mes fichier :
mail:/dev/perl/moduleperl # tar xvfz *.gz
tar: Archive-Zip-1.09.tar.gz: Not found in archive
tar: Authen-SASL-2.06.tar.gz: Not found in archive
tar: Compress-Zlib-1.32.tar.gz: Not found in archive
tar: Convert-ASN1-0.18.tar.gz: Not found in archive
tar: Convert-TNEF-0.17.tar.gz: Not found in archive
tar: Convert-UUlib-1.0.tar.gz: Not found in archive
si quelqu’un a une idée je suis preneur …
est ce que mes fichiers gz sont foireux ?
thks
Bussiere
Décompresse les un par un (tu fais un tar xvzf xxx.tar.gz par fichier), et ça marchera mieux…
thks
effectivement ctait tout con …
thks a lot
Bussiere
Oui donc comme rorotaz, mais je vais etre plus verbose.
Relis le man pour savoir que tar fonctionne comme ca:
tar [option] [tar file] [files]
dans le cas d’une decompression, tar va lire le premier fichier tar.gz et considerer que c’est le fichier a decompresser, puis va essayer de trouver les fichiers que tu lui donne en plus. je rappelle que “ls *.gz”, le programme a comme ligne de commande reelle “ls machin.gz foo.gz truc.gz”: le *.gz est interprete par le bash et pas par le logiciel tar.
C’est pareil dans ton cas et ca explique pourquoi ca fonctionne pas comme tu le souhaites. D’ailleurs, tous les logiciels de decompression fonctionne pareil.
Voici une solution:
vi /usr/local/bin/massuntar
for n in $*
do
tar zxvf $n
done
:wq
chmod 755 /usr/local/bin/massuntar
Bon j’ai pas teste, mais ca doit marche, je pense.
LoneWolf
Les mysteres de la (de)compression
A vrai dire je n’avais pas mis l’option “verbose” sur ma réponse pour la simple et bonne raison que j’ai déjà eu ce problème (le tar *.tgz qui ne fonctionne pas), et que “man tar” ne me donnait pas satisfaction pour résoudre ce problème. Je n’y ai pas trouvé de solution (genre une option à rajouter dans la ligne de commande) sans avoir recours, comme tu l’as fait, à un chtit script bash…