Wie entpacke ich einen Tarball, der verwendet.xz?

Ich bin es gewohnt, Tarballs mit einem zu extrahieren -xfz flag, das gzip- und bzip2-Archive verarbeitet.

Vor kurzem bin ich auf eine gestoßen .tar.xz datei und ich möchte sie in einem Schritt mit dekomprimieren tar, wie kann ich das machen?

Ubuntu enthält GNU tar, das das Format selbst erkennt! Ein Befehl funktioniert mit jeder unterstützten Komprimierungsmethode, pro Manual.

tar xf archive.tar.xztar xf archive.tar.gztar xf archive.tar

usw. Wenn Teer eine gibt Cannot exec fehler, möglicherweise müssen Sie sudo apt install xz-utils erst.

Versuchen

tar -xJf file.pkg.tar.xz

Der -J ist die Flagge, mit der sich speziell befasst .xz-Dateien.

Wenn aus irgendeinem Grund die tar lösungen funktionieren nicht (möglicherweise, weil Sie die integrierten OS X-Funktionen verwenden), versuchen Sie Folgendes:

unxz < file.tar.xz > file.tar

...was äquivalent ist zu:

xz -dc < file.tar.xz > file.tar

Dann benutze tar um die Datei zu entpacken.

xz ist ein verlustfreier Datenkompressor. Sie müssen die Teerkugel aus xz extrahieren und dann den Teer extrahieren:

unxz my_archive.tar.xz      # results in my_archive.tar

Dann weißt du, wie man einen Teer extrahiert

tar -xf my_archive.tar

Quelle: XZ Utils - Wikipedia.

Ich hatte das gleiche Problem, das tar xf befehl konnte nicht extrahieren it.To beheben Sie dies, Sie müssen das installieren xz-utils Paket.Die Lösung war:

sudo apt-get install xz-utils

dann:

tar xf myfile.tar.xz
tar -xvf package.tar.xz

-x - dateien extrahieren

-v - verarbeitete Dateien ausführlich auflisten

-f - angegebene Archivdatei verwenden

Ich möchte das nur hinzufügen, wenn Sie eine alte Version von haben GNU tar vor Version 1.22, als die Optionen --xz und -J verfügbar wurden, konnten Sie tar komprimieren oder dekomprimieren.xz-Dateien mit --use-compress-program xz. Beispielsweise,

tar --use-compress-program xz -cf example.tar.xz file1 file2 file3

oder

tar --use-compress-program xz -xf example.tar.xz

Wenn tar das Komprimierungsformat erkennt, benötigen Sie kein Flag:

tar xvf *.tar.xz

Wenn Sie die Eingabe manuell dekomprimieren müssen, z. B. weil Ihr tar zu alt ist, um xz zu erkennen, oder Sie einen speziellen Pfad benötigen:

xz -cd *.tar.xz | tar xvf -

Pipes sind schneller als das Erstellen einer unkomprimierten Zwischendatei und verbrauchen auch weniger Speicherplatz!

Wow, das ist wirklich gut. Wurde es mit 7zip auf einem Mac gemacht? Versuchen Sie dies:

7z x -so file.tar.xz | tar xf -

Ich mag dtrx

sudo apt install dtrxdtrx your-file.tar.xz

beachten Sie, dass Sie möglicherweise `xz-utils’ installieren müssen, falls noch nicht vorhanden

tar --help lists tar flags.
-xzf applies to gzip.
-xjf to bz2.
-xJf to xz.

hier ist mein kleines Skript, das Tar-Flags für Sie errät: getting tired of guessing tar flags in 2013? · GitHub

Bessere Frage als mit tar: Verwenden Sie unar' oder 7z` und machen Sie sich nie wieder Sorgen, das richtige Programm für Ihren Archivtyp auszuwählen. Dies ist die einzig praktikable Lösung für die Zukunft, da immer mehr Archivtypen kommen. Es sei denn, Sie interessieren sich für die technischen Details…