UPDATE: Mir ist aufgefallen, dass viele Leute diesen Thread sehen, was mich glauben lässt, dass diese Situation doch nicht so selten ist. Wie auch immer, ich hatte so eine ähnliche / verwandten Fragen gestellt auf hier , was ziemlich anständig Lösungen zu hat , die das Problem in einer besseren Art und Weise lösen könnte.
Auf meinem Windows 7-Computer habe ich ein Verzeichnis mit heruntergeladenen Speicherauszügen in ZIP-Archiven. Jedes Archiv enthält wenige Textdateien, PDFs und selten XML-Dateien. Ich möchte den gesamten Inhalt jedes ZIP-Archivs in den entsprechenden Ordner extrahieren (muss während des Vorgangs erstellt werden), während das Extrahieren von PDFs verworfen bzw. ignoriert wird. Nach dem Extrahieren der erforderlichen Dateien aus einem Archiv darf die verarbeitete Zip-Datei nicht gelöscht werden (oder ich möchte wissen, wie ich sie in verschiedenen Situationen steuern kann).
Wenn dies hilfreich ist, liegt die Anzahl der Archive im Verzeichnis im Bereich von 60.000 bis 70.000. Außerdem benötige ich separate Ausgabeverzeichnisse, da Dateien in einem Archiv möglicherweise dieselben Namen haben wie Dateien in anderen.
Zum Beispiel,
- Ich habe alle meine Archive wie
one.zip
,two.zip
, .. in, sagen wir,D:\data
- Ich erstelle einen neuen Ordner für verarbeitete Daten, sagen wir
D:\extracted
- Nun sollten die Daten von
D:\data\one.zip
zu gehenD:\extracted\one
. HierD:\extracted\one
sollte automatisch angelegt werden. - Während dieses vollständigen Dekomprimierungsvorgangs sollten nicht alle gefundenen PDF-Dateien extrahiert (ignoriert) werden. Es hat keinen Sinn, zu extrahieren und dann zu löschen.
- (Optional) Eine Protokolldatei sollte, sagen wir, aufrechterhalten werden
D:\extracted
. Diese Datei soll verwendet werden, um die Verarbeitung an der Stelle fortzusetzen, an der sie im Fehlerfall belassen wurde. - (Optional) Mit dem Skript kann ich entscheiden, ob ich Quellarchive behalten oder nach der Verarbeitung löschen möchte.
Ich habe bereits nach einer Lösung gesucht, aber keine gefunden. Ich bin auf ein paar Fragen wie diese gestoßen
- Entpacken Sie rekursiv die Dateien, in denen sie sich befinden, und löschen Sie die Archive
- 7 Zip-Extrakt rekursiv
- Ist es möglich, Zip-Datei-Inhalte mit 7 Zip rekursiv aufzulisten, ohne sie zu extrahieren?
aber sie halfen nicht viel (ich bin übrigens kein Windows-Profi). Ich bin offen für die Installation von sicherer und werbefreier Software von Drittanbietern (Open Source) wie 7-zip.
BEARBEITEN: Gibt es ein Tool, mit dem ich das tun kann, was ich brauche ? Ich habe Multi Unpacker bereits ausprobiert . Es werden keine neuen Verzeichnisse erstellt und * .pdf-Dateien können nicht ignoriert werden. Es beginnt sogar langsam, ich denke, es liest zuerst alle Archive an der Quelle, bevor es mit der Verarbeitung beginnt.
Danke im Voraus!