Batch Daten löschen die älter sind als X Tage

Deathcore

Lieutenant
Registriert
Apr. 2009
Beiträge
712
Guten Morgen liebe CBler,

ich habe mir folgendes Skript programmiert:

(welches ca so aussieht)

Die Anforderung ist das es sich das aktuelle Backup (vom heutigen Tag) aus Gesamtbackups\SIMATIC_FSB holt dieses komprimiert und dann auf einen USB kopiert. Dort sollen dann alle Daten gelöscht werden die älter als X Tage sind.

Das klappt auch so weit. Doch leider wie ich finde nicht ganz optimal da ich die Dateien erst mit robocopy verschieben muss. Dabei ist mir dann folgendes Problem klar geworden:

/MOVE :: Verschiebt Dateien UND Verzeichnisse (löscht sie nach dem Kopieren an der Quelle).

Sprich ich habe die Daten für einen Kurzen Moment doppelt? Wann werden die Quelldaten gelöscht? Wenn die Datei fertig kopiert ist oder wenn alle fertig sind?

Gibt es auch eine Möglichkeit das ganze direkt mit einem DEL oder rmdir zulöschen?


Code:
REM # Kopiere alle Dateien die von heute sind nach xY

robocopy C:\QST_Data\Gesamtbackups\SIMATIC_FSB C:\test\ /MAXAGE:1 /S

C:\Users\X\Desktop\Backupscheißautomat\rar.exe a C:\rar\arr.rar C:\test -df

robocopy C:\QST_Data\Gesamtbackups\SIMATIC_FSB C:\wegdamit\ /MINAGE:10 /S /MOVE

rmdir /s /q C:\wegdamit\
 
Probier es mit dem kleinen Programm Delage32., auf welches die Batch verweisen muss.

Es überprüft das Alter und löscht dann die Dateien. Du musst nichts bewegen oder kopieren.

Ausschnitt einer Batch:
----------------------
REM Verzeichnis wird auf Dateialter überprüft. (Variante 1-Default: 14 Tage)

REM BEISPIEL: "D:\Grundinstallation\delage32\delage32.exe" "D:\Grundinstallation\Sicherung\*.*" 14 /recurse /created /rd

"C:\Batch\delage32\delage32.exe" "C:\QST_Data\Gesamtbackups\SIMATIC_FSB\*.*" 10
---------------------

Downloadlink: http://www.horstmuc.de/wbat32d.htm
 
Zuletzt bearbeitet:
Klingt perfekt !


Danke werde es die Tage mal austesten!
 
Hat super geklappt danke


CLOSED
 
Zurück
Oben