Der tar
Mit dem Befehl können Sie tar-Archive erstellen und extrahieren. Es unterstützt eine große Auswahl an Komprimierungsprogrammen wie gzip, bzip2, lzip, lzma, lzop, xz und compress.
Bzip2 ist einer der beliebtesten Algorithmen zum Komprimieren von Tar-Dateien. Per Konvention der Name eines mit bzip2 komprimierten tar-Archivs endet entweder mit .tar.bz2 oder .tbz2 .
In diesem Tutorial erklären wir, wie man tar.bz2 entpackt (oder entpackt). und tbz2 Archive mit dem tar
Befehl.
Extracting tar.bz2 File #
Die meisten Linux-Distributionen und macOS enthalten das tar Dienstprogramm standardmäßig vorinstalliert.
Um eine tar.bz2-Datei zu extrahieren, verwenden Sie --extract
(-x
) Option und geben Sie den Namen der Archivdatei nach dem -f
an Möglichkeit:
tar -xf archive.tar.bz2
Der tar
Der Befehl erkennt den Komprimierungstyp automatisch und extrahiert das Archiv. Der gleiche Befehl kann verwendet werden, um tar-Archive zu extrahieren, die mit anderen Algorithmen wie .tar.gz komprimiert wurden oder oder .tar.xz .
Wenn Sie ein Desktop-Benutzer sind und die Befehlszeile nicht Ihr Ding ist, können Sie Ihren Dateimanager verwenden. Um eine tar.bz2-Datei zu extrahieren (entpacken), klicken Sie einfach mit der rechten Maustaste auf die Datei, die Sie extrahieren möchten, und wählen Sie „Extrahieren“. Windows-Benutzer benötigen ein Tool namens 7zip, um tar.bz2-Dateien zu extrahieren.
Für eine ausführlichere Ausgabe verwenden Sie -v
Möglichkeit. Diese Option teilt tar
mit um die Namen der Dateien anzuzeigen, die auf dem Terminal extrahiert werden.
tar -xvf archive.tar.bz2
Standardmäßig tar
extrahiert den Archivinhalt in das aktuelle Arbeitsverzeichnis. Verwenden Sie das --directory
(-C
), um Archivdateien in einem bestimmten Verzeichnis zu extrahieren:
Zum Beispiel, um den Inhalt des Archivs nach /home/linuxize/files
zu extrahieren Verzeichnis würden Sie Folgendes eingeben:
tar -xf archive.tar.bz2 -C /home/linuxize/files
Extrahieren bestimmter Dateien aus einer tar.bz2-Datei #
Um eine oder mehrere bestimmte Dateien aus einer tar.bz2-Datei zu extrahieren, hängen Sie eine durch Leerzeichen getrennte Liste der zu extrahierenden Dateinamen nach dem Archivnamen an:
tar -xf archive.tar.bz2 file1 file2
Beim Extrahieren von Dateien müssen Sie ihre genauen Namen einschließlich des Pfads angeben, wie sie in der --list
gedruckt werden (-t
) Option verwendet wird.
Das Extrahieren eines oder mehrerer Verzeichnisse aus einem Archiv ist dasselbe wie das Extrahieren mehrerer Dateien:
tar -xf archive.tar.bz2 dir1 dir2
Wenn Sie versuchen, eine Datei zu extrahieren, die nicht im Archiv vorhanden ist, wird eine Fehlermeldung ähnlich der folgenden angezeigt:
tar -xf archive.tar.bz2 README
tar: README: Not found in archive
tar: Exiting with failure status due to previous errors
Die --wildcards
Mit der Option können Sie Dateien basierend auf einem Platzhaltermuster aus einer tar.bz2-Datei extrahieren. Das Muster muss in Anführungszeichen gesetzt werden, um zu verhindern, dass die Shell es interpretiert.
Zum Beispiel, um nur die Dateien zu extrahieren, deren Namen auf .md
enden (Markdown-Dateien) verwenden Sie:
tar -xf archive.tar.bz2 --wildcards '*.md'
Extrahieren der tar.bz2-Datei aus stdin #
Wenn Sie eine komprimierte tar.bz2-Datei extrahieren, indem Sie das Archiv von der Standardeingabe lesen (normalerweise durch Rohrleitungen), müssen Sie die Dekomprimierungsoption angeben. Das -j
Option teilt tar
mit dass die Datei mit bzip2 komprimiert ist.
Im folgenden Beispiel laden wir die Vim-Quellen mit wget
herunter Befehl und leiten Sie seine Ausgabe an tar
weiter Befehl:
wget -c ftp://ftp.vim.org/pub/vim/unix/vim-8.1.tar.bz2 -O - | sudo tar -xj
Wenn Sie keine Dekomprimierungsoption angeben, tar
zeigt Ihnen, welche Option Sie verwenden sollten:
tar: Archive is compressed. Use -j option
tar: Error is not recoverable: exiting now
Auflistung der tar.bz2-Datei #
Um den Inhalt einer tar.bz2-Datei aufzulisten, verwenden Sie --list
(-t
) Option:
tar -tf archive.tar.bz2
Die Ausgabe sieht in etwa so aus:
file1
file2
file3
Wenn Sie --verbose
hinzufügen (-v
)-Option, tar
druckt weitere Informationen, wie Eigentümer, Dateigröße, Zeitstempel usw.:
tar -tvf archive.tar.bz2
-rw-r--r-- linuxize/users 0 2019-02-15 01:19 file1
-rw-r--r-- linuxize/users 0 2019-02-15 01:19 file2
-rw-r--r-- linuxize/users 0 2019-02-15 01:19 file3
Schlussfolgerung #
tar.bz2 Datei ist ein mit Bzip2 komprimiertes Tar-Archiv. Um eine tar.bz2-Datei zu extrahieren, verwenden Sie tar -xf
Befehl gefolgt vom Archivnamen.
Wenn Sie Fragen haben, hinterlassen Sie bitte unten einen Kommentar.