Verwenden Sie bsdtar, um eine ZIP-Datei zu erstellen

1032
athos

Ich verwende GnuWin32 bsdtar, um es zu extrahieren:

bsdtar xvf c:\test.zip -C c:\temp\ 

aber ich konnte keine zip-dateien erstellen. Ich habe es versucht

bsdtar -cf test.zip a.csv b.csv 

Die generierte Datei konnte jedoch nicht von winzip geöffnet werden.

Was ist der richtige Weg, um eine ZIP-Datei in der Befehlszeile zu generieren?

2

1 Antwort auf die Frage

1
Nathan.Eilisha Shiraini

Von https://www.freebsd.org/cgi/man.cgi?query=bsdtar&sektion=1 :

-a, --auto-compress (c mode only) Use the archive suffix to decide a set of the for- mat and the compressions. 

Sie müssten also Folgendes verwenden:

bsdtar -a -cf test.zip a.csv b.csv 

Welches ist tatsächlich genau das Beispiel, das sie geben:

tar -a -cf archive.zip source.c source.h creates a new archive with zip format 

Pro-Tipp: Jedes Mal, wenn Sie nach einem Befehl aus der * NIX-Welt suchen, versuchen Sie, man <command>in Google einzugeben . Diese Technik hat mich nie versagt.

bsdtar: ungültige Option - a Verwendung: Liste: bsdtar -tf Extrahieren Sie: bsdtar -xf Erstellen Sie: bsdtar -cf [Dateinamen ...] Hilfe: bsdtar --help athos vor 7 Jahren 0
Sieht so aus, als hätte nur der älteste bsdtar diese Option nicht. Gemäß der aktuellen Dokumentation (https://github.com/libarchive/libarchive/wiki/ManPageBsdtar1#OPTIONS) existiert die Option `-a`. Nathan.Eilisha Shiraini vor 7 Jahren 0
Es scheint jedoch keine andere Möglichkeit zu geben, ein geeignetes ZIP-Archiv mit bsdtar zu erstellen. Wenn Sie mit Windows arbeiten, können Sie versuchen, auf 7z (die Befehlszeilenversion von 7zip) umzuschalten. Dies erfordert jedoch, dass Sie Ihre Befehle ändern müssen (besonders langwierig, wenn Sie Skripts verwenden). Nathan.Eilisha Shiraini vor 7 Jahren 0
Nach dem Graben scheint die GnuWin32-Version von bsdtar tatsächlich wirklich veraltet zu sein. Die GnuWin32-Website selbst gibt an, dass sie "aus archäologischen Gründen" noch da ist. Nathan.Eilisha Shiraini vor 7 Jahren 0
thx ich wechsle zu 7zip athos vor 7 Jahren 0
Sie können versuchen, auf die neueste Version von libarchive zu aktualisieren, obwohl ich nicht weiß, ob sie mit einem kompilierten bsdtar ausgeliefert wurden. Entschuldigung, keine anderen Lösungen zu haben. Nathan.Eilisha Shiraini vor 7 Jahren 0