Ich muss eine einzelne Datei aus einer ZIP-Datei extrahieren, deren Pfad ich kenne. Gibt es einen Befehl wie den folgenden:
unzip -d . myarchive.zip path/to/zipped/file.txt
Leider extrahiert und erstellt der obige Befehl den gesamten Pfad zur Datei unter ./path/to/zipped/file.txt
. Kann ich die Datei einfach in ein bestimmtes Verzeichnis ziehen?
.jar
. Wenn Ihre Datei einen anderen Namen hat, müssen Sie AVFS möglicherweise anweisen, den Zip-Handler zu verwenden, z~/.avfs$PWD/foo.apk#uzip/META-INF
.-p
die Datei wird wie sie ist extrahiert (-c
führt eine Textkonvertierung durch).Geben Sie den vollständigen Pfad für die komprimierte Datei ein, nicht nur den Dateinamen. Stellen Sie sicher, dass die Struktur in der ZIP-Datei so bleibt, wie sie angezeigt wird.
Dadurch wird die einzelne Datei extrahieren
file.txt
inmyarchive.zip
zu/path/to/unzip/to/file.txt
.quelle
Einfachere Version:
Dies wird
PATH_OF_FILE_INSIDE_ARCHIVE
im aktuellen Verzeichnis neu erstellt, aber nur die angegebene Datei extrahiert.So listen Sie alle Dateien in einem Zip-Archiv auf:
quelle
Unter macOS , das standardmäßig Info-Zip verwendet
Listen Sie zuerst die Dateien auf, um das Gewünschte zu finden
Stellen Sie dann eine Liste der Dateien bereit, die aus dem Archiv extrahiert werden sollen
Kombinieren Sie mit -p für stdout
quelle
einfache Bedienung:
und es wird die Datei aufblasen.
quelle
-d outpath
Argument angeben , wo sich die Datei in gesetzt wird.-j
Argument, um die komprimierten Pfade zu vermeiden