Automatisches Löschen von Dateien
Automatisches Löschen von Dateien, die älter als X Tage sind via Batch datei.
[Edit] Thread auf Gelöst gesetzt und geschlossen 10.7.2006 Biber [/Edit]
Hallo, kann mir bitte jemand helfen, wie ich via Batchdatei, Daten in einem Bestimmten Ordner, die älter als 7 Tage sind löschen kann ?
Mit Visual Basic weiss ich wies geht aber ich sollte das mittels Batch machen, da es leichter zu verstehen ist.
Ich hoffe es kann mir jemand helfen das wäre echt nett
Mit freundlichen Grüßen
Alexander
http://www.tw-gaming.com
[Edit] Thread auf Gelöst gesetzt und geschlossen 10.7.2006 Biber [/Edit]
Hallo, kann mir bitte jemand helfen, wie ich via Batchdatei, Daten in einem Bestimmten Ordner, die älter als 7 Tage sind löschen kann ?
Mit Visual Basic weiss ich wies geht aber ich sollte das mittels Batch machen, da es leichter zu verstehen ist.
Ich hoffe es kann mir jemand helfen das wäre echt nett
Mit freundlichen Grüßen
Alexander
http://www.tw-gaming.com
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 20614
Url: https://administrator.de/contentid/20614
Ausgedruckt am: 25.11.2024 um 09:11 Uhr
8 Kommentare
Neuester Kommentar
Moin Nooblike,
Wir hatten schon ein paar ähnliche Fragen hier. Bitte probier doch ruhig mal die Suchfunktion aus, die ist wirklich brauchbar,
Im Prinzip empfehle ich fürFaule Effiziente, die wirklich nur eine Problemlösung wollen, das Utility "DelAge.exe", das wie der Name sagt, Dateien mit einem bestimmten Alter löscht.
Download unter http://home.mnet-online.de/horst.muc/win/indexd.htm und dann "DelAge" auswählen.
Falls es Dir darum geht, erste Gehversuche mit Batchprogrammierung zu machen, ist das allerdings auch ein schöner Einstieg - zeigt eigentlich in einer Handvoll Zeilen, was sich so mit Batch machen lässt.
Ausführlicher ist diese Mimik hier beschrieben: Batch Sichern der 10 zuletzt geänderten Dateien
Dieses Beispiel ließe sich auch dahingehend umdrehen, dass nicht die 10 aktuellsten Dateien "verarbeitet" (in Deinem Fall gelöscht) werden, sondern alle Dateien älter als 7 Tage. Da aber unter dem CMD-Prompt kein Datentyp "Datum" existiert, müsstest Du zur "Rückrechnung" auf das "Tagesdatum minus 8 Tage" entweder aus dem String (29.11.2005"=="Heute") in einer Handvoll Zeilen den String "21.11.2005" erzeugen oder einen *.vbs-Zweizeiler aufrufen, der Dir eine DateDiff() liefern kann.
Variante a) will ich jetzt nicht neu erfinden (würde ich aber hinbekommen *schwör), Variante b), der Aufruf eines VBS-Schnipsels aus einem Batch heraus, ist im Batch-Tutorial "Datums- und Zeitvariablen im Batch" beschrieben.
Wenn Du keine Berührungsängste mit Utilities abseits aller Programmierkonventionen hast, würde ich Dir für Deinen Zweck dann eine Zeile mit dem M$-Sahneschnittchen "ForFiles.exe" empfehlen:
:: --- snipp DelNoobsFilesOlderAWeek.bat
@forfiles -pC:\Nooblike\ -d-8 -c"cmd /c del @File"
:: --- snapp DelNoobsFilesOlderAWeek.bat
Ist grottenhässlich, aber erfüllt Deine Anforderung.
HTH Biber
Wir hatten schon ein paar ähnliche Fragen hier. Bitte probier doch ruhig mal die Suchfunktion aus, die ist wirklich brauchbar,
Im Prinzip empfehle ich für
Download unter http://home.mnet-online.de/horst.muc/win/indexd.htm und dann "DelAge" auswählen.
Falls es Dir darum geht, erste Gehversuche mit Batchprogrammierung zu machen, ist das allerdings auch ein schöner Einstieg - zeigt eigentlich in einer Handvoll Zeilen, was sich so mit Batch machen lässt.
Ausführlicher ist diese Mimik hier beschrieben: Batch Sichern der 10 zuletzt geänderten Dateien
Dieses Beispiel ließe sich auch dahingehend umdrehen, dass nicht die 10 aktuellsten Dateien "verarbeitet" (in Deinem Fall gelöscht) werden, sondern alle Dateien älter als 7 Tage. Da aber unter dem CMD-Prompt kein Datentyp "Datum" existiert, müsstest Du zur "Rückrechnung" auf das "Tagesdatum minus 8 Tage" entweder aus dem String (29.11.2005"=="Heute") in einer Handvoll Zeilen den String "21.11.2005" erzeugen oder einen *.vbs-Zweizeiler aufrufen, der Dir eine DateDiff() liefern kann.
Variante a) will ich jetzt nicht neu erfinden (würde ich aber hinbekommen *schwör), Variante b), der Aufruf eines VBS-Schnipsels aus einem Batch heraus, ist im Batch-Tutorial "Datums- und Zeitvariablen im Batch" beschrieben.
Wenn Du keine Berührungsängste mit Utilities abseits aller Programmierkonventionen hast, würde ich Dir für Deinen Zweck dann eine Zeile mit dem M$-Sahneschnittchen "ForFiles.exe" empfehlen:
:: --- snipp DelNoobsFilesOlderAWeek.bat
@forfiles -pC:\Nooblike\ -d-8 -c"cmd /c del @File"
:: --- snapp DelNoobsFilesOlderAWeek.bat
Ist grottenhässlich, aber erfüllt Deine Anforderung.
HTH Biber
"ForFiles.exe" empfehlen:
:: --- snipp DelNoobsFilesOlderAWeek.bat
@forfiles -pC:\Nooblike\ -d-8 -c"cmd /c
del @File"
:: --- snapp DelNoobsFilesOlderAWeek.bat
:: --- snipp DelNoobsFilesOlderAWeek.bat
@forfiles -pC:\Nooblike\ -d-8 -c"cmd /c
del @File"
:: --- snapp DelNoobsFilesOlderAWeek.bat
Nun ich habe das gleiche Problem und wollte genanntes Schnittchen ;) mal ausprobieren. Leider akzeptiert forfiles beim Datumsparamater nicht die -8. Gibt es da vielleicht unterschiedliche Versionen?
Gruß Odi
.. ich kenne nur die Version 1.1 und habe NIE Lust verspürt, weitere Versionen anzutesten.
Das Teil ist so abseits jeglicher Programmier-Konventionen programmiert...*schauder*
Dennoch: bei mir klappt es:
...ind das sind auch die einzigen Dateien in diesem Ordner, die älter als 8 Tage sind.
Einen Workaround muss Du machen bei Dateien "ab gestern", aber beim Parameter "-d-8" gibts keine Probleme.
Gruß
Biber
Das Teil ist so abseits jeglicher Programmier-Konventionen programmiert...*schauder*
Dennoch: bei mir klappt es:
>y:\_1\forfiles -pY:\_1\ -d-8 -c"cmd /c echo @FILE @FDATE"
Cliptray.txt 20050503
Forfiles.exe 19990213
Einen Workaround muss Du machen bei Dateien "ab gestern", aber beim Parameter "-d-8" gibts keine Probleme.
Gruß
Biber
.. ich kenne nur die Version 1.1 und habe NIE
Lust verspürt, weitere Versionen
anzutesten.
Lust verspürt, weitere Versionen
anzutesten.
Tja, dann ist meine wohl 1.0 ;)
Das Teil ist so abseits jeglicher
Programmier-Konventionen
programmiert...*schauder*
Programmier-Konventionen
programmiert...*schauder*
Hehe... manchmal heiligt der Zweck die Mittel ;)
Einen Workaround muss Du machen bei Dateien
"ab gestern", aber beim Parameter
"-d-8" gibts keine Probleme.
"ab gestern", aber beim Parameter
"-d-8" gibts keine Probleme.
Hmm... ich habe meine von hier:
f*p://ftp.microsoft.com/Services/TechNet/samples/PS/Win98/Reskit/SCRPTING/
und mit der geht es leider definitiv nicht. Wäre es möglich wenn du mir Deine irgendwie zukommen/zur Verfügung stellen könntest?
Gruß Odi
Moin Göran,
dann werde glücklich mit der ForFiles.exe...
Ich schließe trotzdem diesen Thread, bevor noch mehr Fragen zu diesem M$-Sahnestück kommen... denn eigentlich war ForFiles in diesem Thread auch nur eine Fussnote oder Randbemerkung... nicht die empfohlene Lösung.
Stressarmen Wochenbeginn wünscht
Biber
dann werde glücklich mit der ForFiles.exe...
Ich schließe trotzdem diesen Thread, bevor noch mehr Fragen zu diesem M$-Sahnestück kommen... denn eigentlich war ForFiles in diesem Thread auch nur eine Fussnote oder Randbemerkung... nicht die empfohlene Lösung.
Stressarmen Wochenbeginn wünscht
Biber