robocoy maxage, wie alte Dateien löschen?

>|Sh4d0w|<

Commander
Registriert
Jan. 2009
Beiträge
2.489
Hallo,
ich spiegle mir Dateien aus einem Quellpfad in einen Zielpfad mit der Besonderheit, dass NUR Dateien gespiegelt werden, welche nicht älter als 7 Tage (Erstelldatum zum aktuellen Datum) sind.

ROBOCOPY "%qu01%" "%z01%" /MIR /DCOPY:T /S /MAXAGE:7 /TS /NP /LOG+:%ziel%\logs\%datum%.txt

Nun wunderte ich mich, wieso meine Festplatte imemr weniger Platz frei hatte. Also mal die Verzeichnisse gecheckt und bemerkt, dass in dem Zielpfad auch alte Dateien sind, die mal irgendwann robokopiert worden waren.

Kann ich in dem Command sagen, dass er alte Dateien im Zeil löschen soll, wenn sie das Alter überschritten haben?
 
Ich würde sagen: nein! Denn RoboCopy ist ja kein RoboDel :D

Aber mal überlegt… Du kopierst nur Dateien jünger als 7 Tage. Was nützt dir dann aber ein Ziel wenn du mit anderen Operationen dortselbst alles tötest was älter als 7 Tage ist..? Veraltete Quellen kommen nicht rüber, und so ein Häuflein Dateien nenne ich dann alles außer ein Backup.

Du könntet also das Ziel 1 Schritt vor dem RoboCopy schlicht in tutto löschen. Endresultat wäre das selbe.

CN8
 
Das ganze will ich quasie als "incrementielles" Backup durchführen. Ein vollwertiges wird ja noch abseits dieser Geschehnisse durchgeführt ;)
Ja so wäre ich auch vorgegangen, das mit erase oder rmdir umzusetzen. Ich dachte nur, man könne es möglicherweise gleich im robocopy hinterlegen, da ich für einige Verzeichnisse sonst alles doppelt hinterlegen müsste. macht 2x6 = 12 :D
 
Du könntest über Robocopy Dateien mit gewissem Alter in ein anderes Verzeichnis verschieben und anschließend das Verzeichnis löschen.
 
stimmt. Ansetzen könnte ich es auf dem Wurzelverzeichnis, wobei man dann auch gleich das Verzeichnis löschen kann. Ver Vorteil hier wäre, dass dann beim nächsten robocopy run nicht wieder alle x Datein, welche dann eben 6 Tage alt sind, erneut kopiert werden.

Sozusagen als /MOVE und /MINAGE 8 (jüngere Tage werden ignoriert und nur die älteren genommen?)

geade ausprobiert, es funktioniert mit folgendem Befehl
Code:
ROBOCOPY "%ziel%\test\" "%loeschen%" /MOVE /E /MINAGE:8
rmdir %loeschen% /Q /S

EDIT: also bei großen Verzeichnissen erzeugt das ganz schön Schreib-/Leseaufkommen. Beim Move kopiert er erst die Datei und löscht dann die Quelldatei.
Hmm

Ich werde wohl doch erst ALLES vorher erst löschen.
 
Zuletzt bearbeitet:
Zurück
Oben