Automatische Bereinigung von Verzeichnissen

Zum automatisierten löschen von Daten innerhalb eines bestimmten Zeitraums kann z.B. PowerSehll mit dem Befehl Get-ChildItem verwendet werden.
Gehen Sie wie folgt vor

  1. Melden Sie sich am System mit Administrationsrechten an
  2. Starten Sie den Taskmanager und erstellen einen neuen Task der Täglich zu einen fixen Zeitpunkt ausgeführt wird.
    1. Allgemein
      • Vergeben Sie einen sprechenden Namen
      • Vergeben Sie eine Beschreibung damit in der Zukunft noch ersichtlich welche Aufgabe der Task hat
      • Geben Sie einen Benutzer an, der lokale Administrationsrechte und Ausführungsrechte  besitzt
        (Der Account für die Ausführung im Aufgabenplaner muss das Recht Anmelden als Dienst besitzen (Lokale Sicherheitsrichtlinien / Zuweisung von Benutzerrechten / Anmelden als Stapelverarbeitungsauftrag))
      • Aktivieren Sie „Unabhängig von der Benutzeranmeldung ausführen“
    2. Trigger
      • Geben Sie eine Zeitraum an wann der Task ausgeführt werden soll, z.B. Täglich um 06:00 Uhr
    3. Aktion
      • Wählen Sie Programm starten
      • Als Programm geben Sie den folgenden Wert ein
        powershell.exe
      • Als Argument geben Sie den folgenden Wert ein, wobei der Verzeichnispaf und die Anzahl der Tage angepasst werden müssen:
        Get-ChildItem [Verzeichnispfad] | foreach-object {get-childitem $_.fullname} | Where-Object{($_.PSIsContainer)} | % {if( $_.CreationTime -lt ((get-date).AddDays([-Anzahl der Tage])) ){ Remove-Item -Force -Confirm:$false -recurse $_.fullname}}
        Get-ChildItem E:\ | foreach-object {get-childitem $_.fullname} | Where-Object{($_.PSIsContainer)} | % {if( $_.CreationTime -lt ((get-date).AddDays(-4)) ){ Remove-Item -Force -Confirm:$false -recurse $_.fullname}}
  3. Speichern Sie die Einstellung.

Eine Antwort schreiben