
Ich habe bereits gelernt, wie ich meine Dateien mit 7zip stapelweise komprimieren kann, aber ich habe diesbezüglich einen komplexeren Bedarf. Vielleicht kann ich meine Anforderungen anhand dieses Szenarios erklären:
Ich habe einen Sicherungsordner mit meinen Zeichnungen und Modelldateien und diese befinden sich in den Unterordnern des Clients. Der Ordnerbaum sieht also ungefähr so aus:
Ordner01\Datei1.ABC, Datei2.ABC, file3.def, file4.def
oder
Ordner02\Ordner03\Datei1.ABC, Datei2.def
...und so weiter.
Gibt es eine Möglichkeit, jede *.abc-Datei neben der Originaldatei und an ihrem ursprünglichen Ort zu komprimieren, oder eine ähnliche Lösung für eine solche Situation?
Antwort1
Versuchen Sie, die folgende Batchdatei im Stammverzeichnis Ihrer Ordner zu speichern und dort auszuführen:
@echo off
for /R %%f in (*.abc) do (7za a %%~pf%%~nf.zip %%f)
Dadurch wird die Batchdatei angewiesen, /R
die Ordner rekursiv () nach einer beliebigen () Datei zu durchsuchen *.abc
und den 7za
Befehl auszuführen.
%%~pf
ist der aktuelle Pfad in der Schleife, %%~nf
ist der Dateiname ohne Erweiterung, weshalb ich dann noch anhänge .zip
. %%f
ist der vollständige Pfad zum aktuellen *.abc
in der Schleife.