Wenn ich zum Beispiel ein Archiv habe, some.zip
das eine oder mehrere Dateien enthält, wie kann ich mit 7-Zip unter Windows nur eine Datei (ich kenne den Namen der Datei) aus der Befehlszeile extrahieren ?
34
Fügen Sie als Antwort auf die Antwort von surfasb am Ende ein -r-Flag hinzu, um erneut zu verfahren:
7z e [archive.zip] -o[outputdir] [fileFilter] -r
Unterstützung mehrerer Filter:
7z e [archive.zip] -o[outputdir] [fileFilter_1] [fileFilter_2] -r
Beispiel:
Befehlszeile für mehrere Filter:
7z e archive.zip -o outputdir *.xml *.dll -r
PS: Ich benutze 7za.exe anstelle von 7z.exe. Dies ist der eigentliche Befehl, den ich in meinem Skript verwende:
7za.exe x archive.zip -o outputdir *.xml *.pdb *.exe *.ocx *.dll -r
.XML
und.zip
? Entschuldigung, wenn ich diesen Thread entführe, wollte ich nur keine doppelte Frage hinzufügen.SubArchive.zip
aus demMainArchive.zip
in deinem Fall zu extrahieren . Möglicherweise führen Sie nach der ersten Extraktion einen FolgebefehlMyFile.txt
aus,SubArchive.zip
aus dem extrahiert werden soll.Fügen Sie einfach den Dateinamen am Ende hinzu.
quelle
.XML
und.zip
? Entschuldigung, wenn ich diesen Thread entführe, wollte ich nur keine doppelte Frage hinzufügen.Wenn Sie sich die Manpage für 7z ansehen, werden Sie feststellen, dass der folgende Befehl zum Extrahieren einer Datei aus einem 7z-Archiv verwendet werden kann (obwohl die Verwendung von path in der Manpage fehlt):
Beispiele:
Alternativ könnten Sie verwenden
e
.Das Benutzerhandbuch für die Befehlszeilenversion enthält offenbar weitere Informationen zur tatsächlichen Verwendung.
quelle
Beachten Sie, dass
7z
die folgende Syntax verwendet wird (beachten Sie die Leerzeichen und Anführungszeichen um die"-oMy Folder"
Option zum Festlegen des Namens des Ausgabeordners. Ich habe Stunden gebraucht, um das herauszufinden, da ich dies ursprünglich auf die falsche Weise getan habe: *-o "My Folder"
*):quelle