Linux / Commande gunzip : décompresser un fichier en conservant le .gz
gunzip décompresse un fichier .gz ; avec GNU gzip, il correspond à gzip -d. Par défaut, il remplace normalement le fichier compressé par sa version décompressée. Ajoutez -k pour garder le .gz, ou -c pour lire son contenu et choisir vous-même une autre sortie.
Choisir entre remplacement et conservation
gunzip [OPTIONS] FICHIER.gz [FICHIER.gz ...]
Vérifiez l’implémentation installée avec gunzip --version et man gunzip. Pour un fichier report.log.gz ordinaire, gunzip report.log.gz restaure normalement report.log et retire le .gz après réussite. Si la destination existe déjà, le programme peut demander une confirmation ou refuser selon le contexte. Ne forcez pas l’écrasement avant d’avoir déterminé quel fichier conserver.
| Commande | Résultat recherché |
|---|---|
| gunzip report.log.gz | Remplacer le fichier compressé après décompression réussie. |
| gunzip -k report.log.gz | Restaurer report.log en conservant report.log.gz. |
| gunzip -c report.log.gz | Envoyer le texte décompressé sur la sortie standard, sans retirer le .gz. |
Ces trois lignes sont des alternatives. Ne les exécutez pas à la suite sur un même fichier en supposant que l’entrée et la destination restent disponibles et libres. Le suffixe sert au choix du nom de sortie ; renommer des octets arbitraires en .gz ne les transforme pas en données gzip.
Préparer et décompresser un exemple complet
Dans Bash, créez un nouveau dossier de travail et un sous-dossier de restauration. La préparation suivante utilise gzip -c afin de garder le texte de référence :
demo=$(mktemp -d) &&
cd "$demo" &&
mkdir restored &&
printf 'hello\n' > note.txt &&
gzip -c note.txt > restored/note.txt.gz &&
printf 'Repertoire de travail : %s\n' "$demo"
Continuez seulement si chaque commande réussit, dans le même terminal. Le chemin affiché permet de retrouver l’essai. note.txt reste dans le dossier principal et restored ne contient pour l’instant que sa copie compressée.
gunzip -k restored/note.txt.gz &&
ls -l restored/note.txt restored/note.txt.gz &&
cmp note.txt restored/note.txt
La liste doit afficher les deux fichiers restored/note.txt et restored/note.txt.gz. cmp compare les octets au texte de référence : il ne produit normalement rien et renvoie 0 si le contenu est identique. Le résultat de l’exemple est hello suivi d’un saut de ligne ; la taille du .gz n’a pas à être inférieure à celle de ce texte minuscule.
Si vous voulez choisir un autre nom de destination, partez du même fichier compressé conservé :
gunzip -c restored/note.txt.gz > another-note.txt &&
cmp note.txt another-note.txt
Le nom another-note.txt est nouveau dans cet essai. Une redirection > peut tronquer un fichier existant avant même le démarrage de gunzip ; -c ne protège pas ce fichier de sortie. En cas d’erreur, une sortie partielle peut rester : ne la traitez pas comme une restauration réussie et ne la redirigez jamais vers le .gz source.
Contrôler l’intégrité et comprendre les diagnostics
gunzip -t restored/note.txt.gz && printf 'Flux valide\n'
-t vérifie le flux en le décompressant sans écrire le fichier restauré. Le test est habituellement silencieux en cas de succès ; le message supplémentaire n’est exécuté qu’après un code 0. GNU gzip distingue aussi l’échec, code 1, et l’avertissement, code 2 : consultez les diagnostics plutôt que de vous fier à la seule présence d’un fichier.
Une erreur de contrôle ou une fin de fichier inattendue peut indiquer des données corrompues ou incomplètes. Vérifiez la source du transfert et recherchez une copie correcte. -f ne répare pas une archive endommagée et peut autoriser des écrasements ou modifier le traitement de données non reconnues en mode sortie standard.
Un test réussi ne prouve pas que le fichier vient de l’expéditeur attendu ni qu’il correspond à la bonne version. La comparaison avec une référence fiable répond à une autre question. -l affiche des tailles et des informations de compression, mais ne remplace pas -t ; sur des membres gzip concaténés, une partie de ses informations ne concerne que le dernier membre.
Traiter correctement un fichier .tar.gz
gunzip backup.tar.gz retire seulement la couche gzip : il laisse normalement backup.tar. Il ne répartit pas les fichiers et dossiers contenus dans cette archive. Pour les consulter et les extraire, utilisez tar, en inspectant d’abord les chemins et en choisissant un dossier de destination vide.
Le guide tar avec liste des membres et restauration vérifiée explique tar -tzf et tar -xzf -C dans un exemple complet. gunzip peut décompresser une suite de membres gzip, mais cela ne crée pas pour autant une archive dont les fichiers seraient extractibles individuellement.
La décompression peut demander beaucoup plus d’espace que la taille du .gz et ne fournit pas de chiffrement. Pour les options de conservation, les suffixes et les contrôles disponibles, consultez le manuel officiel de GNU gzip et gunzip.




