Hallo alle miteinander,
Ich habe ein kleines problem beim erstellen einer bat datei --> OS: Windows XP
und zwar sollte diese folgendes ausführen:
--> checken ob sich Ordner im pfad (C:\pfad\pfad2\pfad3) befinden die älter als 30 Tage sind. Wenn ja dann löschen. Allerdings müssen die letzten 3 Ordner erhalten bleiben.
Bedingung:
1. Es müssen immer die letzten 3 Ordner erhalten bleiben
2. Der Ordner muss älter als 30 Tage sein
Die Namensgebung der zu löschenden Ordner sieht z.b wie folgt aus:
1. 20111024155156 also das Jahr, Monat, Tag, Std , min, sek. sind im Name bereits enthalten.
Ich möchte dies Aktionen als Batch Datei ausführen lassen und sie über den scheduler täglich zu einer bestimmten Uhrzeit laufen lassen. Am besten im Hintergrund. Es sollte aber eine FM kommen sobald es zu problemen kommt.
Ich habe mir folgendes ausgedacht:
über forfiles
forfiles /p "c:\pfad\pfad2\pfad3" /c "cmd /c if @isdir==TRUE RMDIR /S /Q @path" /d -30
lösch ich die ordner die älter sind als 30 Tage.
Mich stellt sich die Frage wie ich es schaff das er die letzten 3 stehen lässt??
Sorry aber ich bin grad am lernen mit bat. files und CMD umzugehen.
In Java hätte ich das ganze mit nem array gelöst, und nem counter aber das geht hier glaub ich nicht. :confused: