ZIP-Datei und dann alle Sub-Zip-Dateien extrahieren

1

Ich verwende Windows 10, es ist jedoch auch für Windows 7 erforderlich.
Ich habe file.zipdie darin enthaltenen xzip-Dateien, von denen jede auch xzip-Dateien enthält. Wie könnte ich all diese "nicht manuell" extrahieren? IE mit einer Bach-Datei oder einem Python-Skript?

Hugh
quelle
Scheint in der Nähe von superuser.com/q/421915/328618 zu sein . Leider erwähnen Sie nicht, ob der entpackte Inhalt mit den bereits vorhandenen Dateien namenskollidieren kann oder nicht (entpacktes Material benötigt möglicherweise ein zusätzliches Verzeichnis, um es zu enthalten) und was mit den entpackten Zip-Dateien geschehen soll.
mvw

Antworten:

1

Im Folgenden finden Sie eine Methode, die ich in der Vergangenheit für dieselbe Art von Aufgabe verwendet habe, die Sie beschreiben und die ich aus einer meiner " Taschen voller Skripte " gezogen habe. Ich habe die kostenlose 7-Zip- Anwendung für diese Aufgabe mit 100% Erfolg verwendet.

Im Wesentlichen das. . .

  • Verwendet die 7-Zip-App (7za), um den Inhalt von Zip-Dateien an einem Ort an einen anderen zu extrahieren
  • Anschließend wird eine Kopie der extrahierten ZIP-Dateien innerhalb der anfänglich extrahierten Dateien erstellt und diese in ein Arbeitsverzeichnis kopiert
  • Anschließend werden ZIP-Dateien aus dem Quellcode gelöscht und die anderen ZIP-Dateien aus dem Arbeitsverzeichnis und den Schleifen extrahiert, bis sie vollständig sind

Hinweis: Die ausführbare 7za-Datei muss möglicherweise entweder in den /system32Ordner kopiert werden oder Sie müssen den Pfad in der PATHUmgebungsvariablen festlegen .


Batch-Skript

Sie müssen die Werte für Quelle, Ziel und Arbeitsverzeichnisvariable entsprechend Ihrer Umgebung und Ihren Anforderungen festlegen. Der Rest sollte wie erwartet funktionieren.

@ECHO ON

SET sourcedir=C:\Test\Source
SET destdir=C:\Test\Dest
SET workdir=C:\Test\WorkTemp

:unzip
7za -Y e "%sourcedir%" -o"%destdir%" -r
DEL /Q /F "%workdir%\*zip
XCOPY /Y /F %destdir%\*.zip "%workdir%"
DEL /Q /F %destdir%\*.zip

DIR "%workdir%\*.zip" /A-D                         
IF ERRORLEVEL 1 GOTO :done

:unzip2
7za -Y e "%workdir%" -o"%destdir%" -r
DEL /Q /F "%workdir%\*.zip"
XCOPY /Y /F %destdir%\*.zip "%workdir%"
DEL /Q /F %destdir%\*.zip

DIR "%workdir%\*.zip" /A-D                         
IF ERRORLEVEL 1 GOTO :done
GOTO :unzip2

:done
GOTO :EOF

Weitere Ressourcen

Pimp Juice IT
quelle