
Ich führe derzeit eine Batchdatei aus, die alle meine Dateien sichert, die in den letzten 24 Stunden mit einer alten Version von Winzip erstellt oder geändert wurden. Ich verwende 7zip häufig zum Archivieren und würde es gerne für diesen Zweck verwenden können, aber es hat keine Schalter, mit denen Sie Dateien basierend auf ihrem Datums-/Zeitstempel auswählen können. Ich möchte Dateien NICHT basierend auf ihrem Zeitstempel in ein Verzeichnis kopieren und sie von dort aus archivieren. Irgendwelche Vorschläge?
Antwort1
http://ss64.com/nt/forfiles.html
Und
http://www.dotnetperls.com/7-zip-examples ->
forfiles /c "7za a -t7z @fname.7z @file" /d -1
Antwort2
Nach einiger Recherche bin ich auf etwas gestoßen, das funktionieren sollte ...
forfiles /c "cmd /c 7z u -t7z [setup an empty 7z file].7z @path" /d -1 /s
Antwort3
Schließen, aber mit diesen Schaltern werden Dateien archiviert, die älter als einen Tag sind. Hier ist die Syntax für den aktuellen Tag (mit einem zur Ausgabedatei hinzugefügten Datum):
set hr=%time:~0,2%
if "%hr:~0,1%" equ " " set hr=0%hr:~1,1%
Rem - compress data that is from current day
forfiles /p "c:\<path of what to backup>" /d 0 /c "cmd /c C:\<Location of 7zip>\7za u -tzip D:\<Where you want archive saved>\Archive_%date:~-4,4%%date:~-10,2%%date:~-7,2%_%hr%%time:~3,2%%time:~6,2%.zip @PATH -mmt"