HOWTO · Linux
So entpacken Sie eine .gz-Datei unter Linux
Erfahren Sie, wie Sie eine .gz-Datei dekomprimieren oder ein .tar.gz-Archiv unter Linux mit gunzip, gzip -d und tar extrahieren und dabei wählen, ob das komprimierte Original erhalten bleibt.
Auf dieser Seite
Um eine eigenständige .gz-Datei unter Linux zu dekomprimieren, verwenden Sie gunzip filename.gz oder gzip -d filename.gz. Um ein .tar.gz-Archiv zu entpacken, verwenden Sie tar -xzf filename.tar.gz. Standardmäßig entfernt die Dekomprimierung die komprimierte Eingabedatei; fügen Sie -k hinzu, wenn Sie sie behalten möchten.
.gz- und .tar.gz-Dateien verstehen
Eine .gz-Datei ist eine einzelne mit gzip komprimierte Datei; die Erweiterung bedeutet nicht, dass sie eine Sammlung von Dateien enthält. Eine .tar.gz-Datei ist ein tar-Archiv, das anschließend mit gzip komprimiert wurde, sodass sie mehrere Dateien und Verzeichnisse enthalten kann. Verwenden Sie gunzip oder gzip -d für eine eigenständige .gz-Datei und tar, um ein .tar.gz-Archiv zu extrahieren.
Eine .gz-Datei mit gunzip dekomprimieren
Führen Sie gunzip report.txt.gz aus, um die Datei in ihrem aktuellen Verzeichnis zu dekomprimieren. Nach erfolgreicher Dekomprimierung ist das Ergebnis report.txt, und report.txt.gz wird entfernt. Um die komprimierte Kopie zu behalten, fügen Sie -k hinzu, wie in gunzip -k report.txt.gz.
Dieses eigenständige Beispiel erstellt eine Beispieldatei, komprimiert sie, dekomprimiert sie unter Beibehaltung der komprimierten Kopie und gibt den wiederhergestellten Inhalt aus:
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
Eine .gz-Datei mit gzip -d dekomprimieren
Die Option -d weist gzip an zu dekomprimieren, sodass gzip -d report.txt.gz dieselbe grundlegende Aufgabe ausführt wie gunzip report.txt.gz. Sie schreibt report.txt neben die Eingabedatei und entfernt normalerweise report.txt.gz nach erfolgreicher Dekomprimierung. Verwenden Sie gzip -dk report.txt.gz, um beide Dateien zu behalten. Wählen Sie einen der beiden Befehle danach, welcher Name leichter zu merken ist; beide verarbeiten eine einzelne gzip-komprimierte Datei.
Ein .tar.gz-Archiv mit tar extrahieren
Verwenden Sie tar -xzf project.tar.gz, um ein mit gzip komprimiertes Archiv zu extrahieren. Die Optionen bedeuten: -x extrahiert, -z übernimmt die gzip-Komprimierung und -f benennt die Archivdatei. Standardmäßig schreibt tar die archivierten Pfade unter das aktuelle Arbeitsverzeichnis, führen Sie den Befehl also in dem Verzeichnis aus, in dem diese Pfade erstellt werden sollen. Um ein anderes Ziel zu wählen, fügen Sie -C /path/to/destination hinzu, zum Beispiel tar -xzf project.tar.gz -C /tmp/project.
Ein .tar.gz-Archiv und eine eigenständige .gz-Datei benötigen unterschiedliche Befehle: tar liest die Archivschicht und stellt deren enthaltene Dateien wieder her, während gunzip einen gzip-Datenstrom in eine Datei dekomprimiert. Der gezeigte Befehl listet die extrahierten Pfade nicht auf; verwenden Sie die ausführliche Option -v von tar, wenn die Namen der enthaltenen Dateien beim Extrahieren ausgegeben werden sollen.
Eine Datei mit gzip komprimieren
Um eine Datei zu komprimieren, führen Sie gzip report.txt aus. Dies erstellt report.txt.gz und entfernt normalerweise das Original report.txt. Fügen Sie -k hinzu, wie in gzip -k report.txt, um sowohl die Quelldatei als auch die komprimierte Datei zu behalten. Gzip komprimiert jede benannte Datei einzeln; verwenden Sie zuerst tar, wenn Sie mehrere Pfade in einem Archiv bündeln müssen, und komprimieren Sie dieses Archiv anschließend, um eine .tar.gz-Datei zu erstellen.