Wie kann ich Zip-Archive über die Kommandozeile erstellen und entpacken?
Normalerweise verwendet man tar
, um ein unkomprimiertes Archiv zu erstellen und entweder gzip
oder bzip2
, um dieses Archiv zu komprimieren. Die entsprechenden Befehle gunzip
und bunzip2
können verwendet werden, um das Archiv zu dekomprimieren, oder Sie können einfach Flags auf dem tar
Befehl verwenden, um die Dekompression durchzuführen.
Wenn Sie sich speziell auf das [Zip-Dateiformat] (https://en.wikipedia.org/wiki/Zip_%28file_format%29) beziehen, können Sie einfach die Befehle zip
und unzip
verwenden.
Zum Komprimieren:
zip squash.zip file1 file2 file3
oder um ein Verzeichnis zu komprimieren
zip -r squash.zip dir1
Zum Dekomprimieren:
unzip squash.zip
Dies entpackt die Datei in Ihrem aktuellen Arbeitsverzeichnis.
Es gibt wirklich viele verschiedene Möglichkeiten, unter UNIX-Derivaten zu komprimieren und zu dekomprimieren, daher gehe ich davon aus, daß Sie "zip" im allgemeinen Sinne meinten und nicht ein spezielles Dateiformat.
Sie können Dateien (in komprimiertem Format) mit dem GNU-Programm tar
komprimieren:
tar -zcvf myfile.tgz .
Das macht das aktuelle Verzeichnis. Ersetzen Sie .
durch andere Dateinamen, wenn Sie etwas anderes wollen.
Um diese Datei zu entpacken, verwenden Sie:
tar -zxvf myfile.tgz
Das setzt natürlich voraus, dass Sie ein tar
haben, das in der Lage ist, sowohl die Komprimierung als auch das Zusammenfassen von Dateien zu einer einzigen durchzuführen.
Wenn nicht, können Sie einfach tar cvf
gefolgt von gzip
(wieder, falls verfügbar) für die Kompression und gunzip
gefolgt von tar xvf
verwenden.
Für die spezielle Handhabung von Dateien im ZIP-Format würde ich empfehlen, 7zip
herunterzuladen und zu benutzen - es erkennt eine große Vielfalt von Dateiformaten, einschließlich des ZIP-Formats.
Die Standardantwort ist pax
, die gegenüber cpio
und tar
empfohlen wird.
Anders als cpio
und POSIX tar
, aber wie GNU tar
, ist pax
in der Lage, sowohl Dateien zu archivieren als auch das Archiv zu komprimieren. Dieses Verhalten unterscheidet sich von zip
, das jede Datei komprimiert, bevor es sie in das Archiv packt.