Windows Ordner und Dateien nach Zeit löschen

Aktuell ist es so, dass ich die Bilder einer Webcam bei mir auf dem FTP Server lokal speichere. Da die Kamera aber für jeden Tag einen neuen Ordner und Bilder erstellt (da ich das so möchte, es geht auch anders) wird es auf die Dauer ziemlich viel an Bildern (Dateien und Ordnern)

Ich war jetzt auf der Suche nach einem Script, womit die Bilder, die älter als 6 Monate sind automatisch gelöscht werden.

Folgendes habe ich gefunden bzw. auf meine Bedürfnisse zugeschnitten.

Der erste Eintrag in meiner Batch Datei (.bat) ist für das finden der alten Dateien und löschen zuständig:

Forfiles /P h:\ftp\ipcam /S /M *.* /D -182 /C "cmd /c del /q @path"

Danach sind alle Bilder, die älter als 182 Tage sind gelöscht. Der Ordner bei mir lautet: H:\ftp\ipcam und muss natürlich individuell angepasst werden.

Leider werden aber nur die Dateien gelöscht, nicht aber die Ordner. Dazu wird ein weiterer Befehl benötigt:

FOR /F %I IN ('dir /AD /b /s h:\ftp\ipcam') DO rd %I

Der Ordner ist der selbe allerdings muss beachtet werden, das dieser Befehl nur als Batch funktioniert, wenn vor das %I ein weiteres % Zeichen dazu kommt. (Also insgesamt zwei %) sieht dann so aus:

FOR /F %%I IN ('dir /AD /b /s h:\ftp\ipcam') DO rd %%I

Danach das ganze als *.bat abspeichern. In Windows Aufgabenplanung einen neuen Task erstellen und das Script jeden Tag einmal laufen lassen.

Like
Like Love Haha Wow Sad Angry

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.