HOWTO · Linux
Comment décompresser un fichier .gz sous Linux
Apprenez à décompresser un fichier .gz ou à extraire une archive .tar.gz sous Linux avec gunzip, gzip -d et tar, et à choisir de conserver ou non l'original compressé.
Sur cette page
Pour décompresser un fichier .gz autonome sous Linux, utilisez gunzip filename.gz ou gzip -d filename.gz. Pour déballer une archive .tar.gz, utilisez tar -xzf filename.tar.gz. Par défaut, la décompression supprime l’entrée compressée ; ajoutez -k lorsque vous souhaitez la conserver.
Comprendre les fichiers .gz et .tar.gz
Un fichier .gz est un fichier unique compressé avec gzip ; l’extension ne signifie pas qu’il contient une collection de fichiers. Un fichier .tar.gz est une archive tar qui a ensuite été compressée avec gzip, elle peut donc contenir plusieurs fichiers et répertoires. Utilisez gunzip ou gzip -d pour un fichier .gz autonome, et tar pour extraire une archive .tar.gz.
Décompresser un fichier .gz avec gunzip
Exécutez gunzip report.txt.gz pour décompresser le fichier dans son répertoire actuel. Après une décompression réussie, le résultat est report.txt, et report.txt.gz est supprimé. Pour conserver la copie compressée, ajoutez -k, comme dans gunzip -k report.txt.gz.
Cet exemple autonome crée un fichier d’exemple, le compresse, le décompresse tout en conservant la copie compressée, puis affiche le contenu restauré :
tmpdir=$(mktemp -d)
trap 'rm -rf "$tmpdir"' EXIT
cd "$tmpdir"
printf 'Linux notes\n' > notes
gzip notes
gunzip -k notes.gz
cat notes
Linux notes
Décompresser un fichier .gz avec gzip -d
L’option -d indique à gzip de décompresser, de sorte que gzip -d report.txt.gz effectue la même tâche de base que gunzip report.txt.gz. Elle écrit report.txt à côté de l’entrée et supprime normalement report.txt.gz après une décompression réussie. Utilisez gzip -dk report.txt.gz pour conserver les deux fichiers. Choisissez l’une ou l’autre commande selon le nom le plus facile à retenir ; les deux traitent un seul fichier compressé avec gzip.
Extraire une archive .tar.gz avec tar
Utilisez tar -xzf project.tar.gz pour extraire une archive compressée avec gzip. Les options signifient : -x extrait, -z gère la compression gzip et -f nomme le fichier d’archive. Par défaut, tar écrit les chemins archivés sous le répertoire de travail actuel, exécutez donc la commande depuis le répertoire où vous voulez que ces chemins soient créés. Pour choisir une autre destination, ajoutez -C /path/to/destination, par exemple tar -xzf project.tar.gz -C /tmp/project.
Une archive .tar.gz et un fichier .gz autonome nécessitent des commandes différentes : tar lit la couche d’archive et restaure ses fichiers membres, tandis que gunzip décompresse un flux gzip en un fichier. La commande présentée ne liste pas les chemins extraits ; utilisez l’option détaillée -v de tar si vous voulez qu’elle affiche les noms des membres au fur et à mesure de l’extraction.
Compresser un fichier avec gzip
Pour compresser un fichier, exécutez gzip report.txt. Cela crée report.txt.gz et supprime normalement l’original report.txt. Ajoutez -k, comme dans gzip -k report.txt, pour conserver à la fois le fichier source et le fichier compressé. Gzip compresse chaque fichier nommé séparément ; utilisez d’abord tar lorsque vous devez regrouper plusieurs chemins dans une seule archive, puis compressez cette archive pour créer un fichier .tar.gz.