Universelles Tool zum Aufheben der Archivierung über die Befehlszeile auf einem Mac

17

Gibt es ein Befehlszeilentool, mit dem Dateien aus den meisten bekannten Archivtypen extrahiert werden können ? So etwas wie StuffIt Expander, aber ohne GUI.

tig
quelle

Antworten:

15

Der Unarchiver hat laut Website seit Version 2.5 zwei Kommandozeilen-Dienstprogramme:

Unterstützte Dateiformate sind Zip, Tar-GZip, Tar-BZip2, RAR, 7-zip, LhA, StuffIt und viele andere mehr und weniger unklare Formate. [..] Wenn Sie eine komprimierte Datei haben, die The Unarchiver nicht öffnet, posten Sie bitte einen Fehler im Bug-Tracker und fügen Sie die betreffende Datei hinzu. Ich werde prüfen, ob es möglich ist, Unterstützung dafür hinzuzufügen!

[..]

Es stehen jetzt zwei Befehlszeilen-Dienstprogramme zur Verfügung, unarmit lsardenen Archive entpackt und aufgelistet werden können. Sie befinden sich noch in der Entwicklung und sind nicht wirklich funktionsreich, sollten aber funktionieren. Diese sind als vorkompilierte Binärdateien für OS X und Windows auf der Download-Seite verfügbar und können auch unter Linux erstellt werden.

Um die Befehlszeilentools herunterzuladen (nicht im regulären The Unarchiver-Download enthalten!), Rufen Sie die Google Code-Downloadseite des Projekts auf und wählen Sie unar0.2.zip(gültig ab 20. September 2010).

Daniel Beck
quelle
Nett! Und es unterstützt viele Formate, genau wie gewünscht.
Arjan
1
Ich kann CLI dort nicht finden.
Tig
1
tig: Du meinst, du konntest im zweiten Absatz nicht auf "Seite herunterladen" und dort auf "unar0.2.zip" klicken? Weil es für mich gut funktioniert.
Daniel Beck
@tig, siehe "unar0.2.zip-, unar- und lsar-Befehlszeilendienstprogramme für Mac OS X 0.2 (Beta-Version)". Ja, seltsam, dass ein Entwickler von unzip-Software seine eigene Software im zip-Format vertreibt. ;-) Nach dem Entpacken gibt es ein bisschen Hilfe mit ./unar --helpund./lsar --help
Arjan
Download-Informationen zur Antwort hinzugefügt
Daniel Beck
4

Versuchen Sie es mit 7-Zip . Zusätzlich zu seinem eigenen nativen Format (.7z) kann es die folgenden Erweiterungen verarbeiten: ZIP, gzip, bzip2, tar und in Betas für Version 9 xz. Es kann auch (nur) in den folgenden Formaten dekomprimiert werden: ARJ, CAB, CHM, CPIO, DEB, DMG, HFS, ISO, LZH, LZMA, MSI, NSIS, RAR, RPM, UDF, WIM, XAR und Z.

Eine Windows-Befehlszeilenversion 7za.exeist enthalten. Für andere Plattformen p7zipsteht im P7ZIP SourceForge-Projekt eine POSIX-Version mit dem Namen zur Verfügung. Einige dieser Ports sind auch über die Downloadseite von 7-Zip verlinkt . Leider scheint die Mac-Verbindung unterbrochen zu sein. Erstellen Sie sie für OS X entweder selbst oder verwenden Sie MacPorts .

BEARBEITEN: Für Nicht-Windows-Versionen gehen Sie auf die Seite Downloads. Dort finden Sie den Quellcode sowie vorkompilierte Binärdateien.

Joe Casadonte
quelle
Nur Windows, soweit ich weiß. In der Frage werden Befehlszeilentools für einen Mac gefragt.
Arjan
4
@Arjan: POSIX-Version p7zip gefunden und es gibt macport dafür
TIG
@tig, ich habe deinen Kommentar in Joes Antwort zusammengeführt. Ich weiß jedoch NICHT, ob p7zipalle von 7-Zip unterstützten Formate unterstützt werden. Wenn jemand von einem binären Download-Link weiß, lassen Sie es uns wissen.
Arjan
Leider kann p7zip auf einem Mac erstellte Archive nicht vollständig verarbeiten (mit speziell benannten Dateien, in denen Gabeln und andere
Extras
4

Wenn Sie zufällig Homebrew verwenden , können Sie atoolviele Archivtypen wie folgt installieren und extrahieren:

brew install atool
atool -x archive.anything

Vorausgesetzt, die entsprechenden externen Programme sind auf Ihrem System verfügbar, kann es Folgendes verarbeiten:

.tar.gz, .tgz, .tar.bz, .tbz, .tar.bz2, .tbz2, .tar.Z, .tZ, .tar.lzo, .tzo, .tar.lz, .tlz, .tar.xz, .txz, .tar.7z, .t7z, .tar, .zip, .jar, .war, .rar, .lha, .lzh, .7z, .alz, .ace, .a, .arj, .arc, .rpm, .deb, .cab, .gz, .bz, .bz2, .gz, .bz, .bz2, .Z, .lzma, .lzo, .lz, .xz, .rz, .lrz, .7z,.cpio

atool ist ein Skript zum Verwalten von Dateiarchiven verschiedener Typen (tar, tar + gzip, zip usw.).

Der Hauptbefehl ist, aunpackwelche Dateien aus einem Archiv extrahiert. Haben Sie jemals Dateien aus einem Archiv extrahiert und nicht überprüft, ob sich die Dateien in einem Unterverzeichnis oder im obersten Verzeichnis des Archivs befanden, was zu überall verstreuten Dateien führte? aunpackÜberwindet dieses Problem, indem Sie zuerst in ein neues Verzeichnis extrahieren. Wenn sich nur eine einzige Datei im Archiv befand, wird diese Datei in das ursprüngliche Verzeichnis verschoben. aunpackverhindert auch, dass lokale Dateien versehentlich überschrieben werden.

Die anderen zur Verfügung gestellten Befehle sind apack(zum Erstellen von Archiven), als(zum Auflisten von Dateien in Archiven) und acat(zum Extrahieren von Dateien nach Standardausgabe). Da atoolexterne Programme zur Bearbeitung der Archive aufgerufen werden, werden möglicherweise nicht alle Befehle für einen bestimmten Archivtyp unterstützt.

atoolidentifiziert Archive anhand ihrer Dateierweiterung. Manchmal ist dies nicht möglich - beispielsweise haben seltene Archive normalerweise unterschiedliche numerische Dateierweiterungen. In den Fällen, in denen atooldas Format nicht identifiziert werden kann, filewird stattdessen verwendet. ( atoolKann so konfiguriert werden, dass keine Datei verwendet wird.)

deizel
quelle
1
Es ist auch über Macports nicht nur durch homebrew und es ist auch möglich, Build von der Quelle
Tig
MacPorts:sudo port install atool
ab77
4

Sie können brew install unaroder brew install atoolund dann verwenden:

unar archive.gz
# or
atool -x archive.gz
Dorian
quelle
"Du kannst nicht für deinen eigenen Beitrag stimmen": D
Dorian
2

Für die Komprimierungs- und Archivierungsarten, die Mac OS X von Haus aus kennt, können Sie nur verwenden open, und es wird "Archive Utility" (früher BOMArchiveHelper) aufgerufen, genau wie wenn Sie im Finder darauf doppelklicken würden. Dies funktioniert für [pk] zip, gzip, bzip, bzip2, tar, pax, cpio, compress (.Z) usw. usw.

Wenn Sie Apps installiert haben, die wissen, wie andere Formate entarchiviert werden, und diese für diese Dateierweiterungen oder magic(5)-werte registriert sind, openstartet der Befehl diese Apps, um diese Typen zu verarbeiten. Natürlich landen Sie wahrscheinlich in den GUIs dieser Apps.

Spiff
quelle
1
Das ist, was ich jetzt benutze, aber es hat einige Nachteile: Ich kann keine Optionen wie das Extrahieren in einen bestimmten Ordner angeben, das Anwendungsfenster springt heraus (auch wenn ich es mit -gstarte, befindet es sich immer noch unter dem vordersten Fenster)
Tig