Je deviens fou avec un fichier gzip.
Je peux décompresser le fichier sous Windows avec WinRAR, mais il est impossible sur tout système d'exploitation UNIX.
le fichier semble être ok. Si je fais
file the_name_of_the_file.gz
Je reçois:
the_name_of_the_file.gz: gzip compressed data, from Unix, last modified: Sun Jan 30 14:10:21 2011
Mais si je le fais
gunzip -f the_name_of_the_file.gz
Je reçois toujours:
gzip: the_name_of_the_file.gz: unexpected end of file
Le même problème se produit lorsque j'essaie d'extraire le fichier à l'aide de l'outil d'interface graphique sous Ubuntu ou MacOSX,
Des idées?
Une solution de contournement pour décompresser un fichier lorsque gzip
échoue avec "fin inattendue du fichier" consiste à utiliser zcat
(également généralement fourni par le paquetage gzip de votre distribution).
$ zcat file.raw.gz > file.raw
Avez-vous par hasard transféré le fichier de Win * à Unix via FTP en mode ASCII? Cela peut l'expliquer. Le fichier a-t-il la même taille sous Win * et Unix?
J'ai résolu le problème en utilisant l'utilitaire P7Zip , un port de 7za.exe pour les systèmes POSIX.
Je soupçonne que vous corrompez le fichier lorsque vous le copiez sur la machine * nix.
FTP-le en mode binaire.
J'ai eu le même problème et, dans mon cas, c'était dû au fait que le fichier était un fichier vide (0 octet) gz
, créé avec la commande touch
:
$touch file.txt.gz
-rw-r--r-- 1 user user 0 2016-05-24 11:48 file.txt
gzip n'a pas pu le décompresser, lorsqu'il a été appelé avec la commande:
$gzip -dv file.txt.gz
gzip: file.txt.gz: unexpected end of file
La manière correcte de représenter un fichier txt
vide aurait d'abord généré le fichier txt
, puis compressé-le et enfin décompressé:
$touch file.txt
$gzip -v file.txt
file.txt: 0.0% -- replaced with file.txt.gz
$gzip -dv file.txt.gz
file.txt.gz: 0.0% -- replaced with file.txt
Je ne sais pas si ce scénario représente votre cas, mais il peut vous donner un indice ou aider quelqu'un d'autre.
Sur la base de quelques expériences avec WinRar, ma première hypothèse est d’extraire des fichiers incomplets ou corrompus sans donner d’erreur, alors que gzip donne (correctement) une erreur.
Que fait 7Zip de votre fichier?
Quelle version gzip -V
annonce-t-il?
Que vous dit gzip -t the_name_of_the_file.gz
? (probablement le même EOF inattendu, mais vaut la peine d'essayer)