Das .tar.gz-Dateiformat ist ein weit verbreitetes komprimiertes Archivformat in Linux. Es kombiniert zwei Prozesse: tar (Bandarchiv), das mehrere Dateien zu einer einzigen zusammenfasst, und gzip, das sie komprimiert. Das Extrahieren von .tar.gz-Dateien über die Linux-Kommandozeile ist eine grundlegende Fähigkeit für Systemadministratoren, Entwickler und Power-User. In diesem Leitfaden werden verschiedene Methoden zum effizienten Entpacken von .tar.gz-Dateien behandelt und die damit verbundenen Optionen für den Umgang mit diesen Archiven untersucht.
Eine .tar.gz-Datei besteht aus:
Um solche Dateien zu extrahieren, verwenden wir den Befehl tar, der ein vielseitiges Dienstprogramm für den Umgang mit komprimierten und unkomprimierten tar-Archiven ist.
Der primäre Befehl zum Extrahieren von .tar.gz-Dateien lautet:
tar -xvzf archive.tar.gz
Um den Inhalt in ein bestimmtes Verzeichnis zu extrahieren, verwenden Sie:
tar -xvzf archive.tar.gz -C /Pfad/zum/Ziel/
Damit wird sichergestellt, dass die Dateien in /Pfad/zum/Ziel/ entpackt werden und nicht in das aktuelle Verzeichnis.
Für eine stille Extraktion (ohne Anzeige der extrahierten Dateinamen):
tar -xzf archiv.tar.gz
Vor dem Extrahieren können Sie sich den Inhalt des Archivs ansehen:
tar -tzf archiv.tar.gz
Dies listet alle Dateien und Verzeichnisse innerhalb des .tar.gz-Archivs auf, ohne sie zu entpacken.
Wenn Sie nur eine bestimmte Datei aus dem Archiv benötigen, verwenden Sie:
tar -xvzf archive.tar.gz pfad/bis/datei.txt
Dies extrahiert nur pfad/bis/datei.txt, ohne andere Dateien im Archiv zu beeinflussen.
Um mehrere Dateien zu extrahieren, listen Sie sie mit Leerzeichen auf:
tar -xvzf archive.tar.gz Datei1.txt Datei2.txt
Manchmal möchten Sie vielleicht nach einer Datei in einem .tar.gz-Archiv
suchen, ohne sie zu extrahieren. Verwenden Sie:
tar -tzf archive.tar.gz | grep "filename"
Damit werden die Dateien herausgefiltert und angezeigt, die dem angegebenen Muster entsprechen.
In manchen Fällen, insbesondere beim Extrahieren von Systemdateien, benötigen Sie Superuser-Rechte:
sudo tar -xvzf archive.tar.gz -C /restricted/path/
Verwenden Sie bei großen Archiven den Befehl pv (falls installiert), um den Fortschritt anzuzeigen:
pv archive.tar.gz | tar -xzvf -
Alternativ können Sie auch die Option --checkpoint
verwenden:
tar --checkpoint=100 -xvzf archiv.tar.gz
Dadurch wird alle 100 entpackten Dateien eine Meldung angezeigt.
Wenn tar
nicht installiert ist, installieren Sie es mit:
sudo apt install tar # Debian/Ubuntu
sudo yum install tar # CentOS/RHEL
Stellen Sie sicher, dass Sie sich im richtigen Verzeichnis befinden, oder geben Sie den vollständigen Pfad zum Archiv an:
tar -xvzf /voll/Pfad/zum/Archiv.tar.gz
Dies tritt normalerweise aufgrund von Berechtigungsproblemen auf. Versuchen Sie, als root zu extrahieren:
sudo tar -xvzf archiv.tar.gz
Das Extrahieren von .tar.gz-Dateien unter Linux ist mit dem tar-Befehl eine unkomplizierte Aufgabe. Ganz gleich, ob Sie ein ganzes Archiv oder eine bestimmte Datei entpacken oder große Dateien effizient handhaben müssen, die Beherrschung dieser Befehle wird Ihren Linux-Arbeitsablauf verbessern. Wenn Sie häufig mit .tar.gz-Archiven arbeiten, sollten Sie in Erwägung ziehen, die Extraktion mit Shell-Skripten zu automatisieren, um Zeit und Mühe zu sparen.