Tag Archives for " script "

Power Shell Skript zum Löschen von Dateien die älter als N Tage sind

Für tägliche, wöchentliche oder monatliche Wartungsarbeiten auf Servern sind sie fast nicht wegzudenken – Power Shell Skripte. Einmal geschrieben, nehmen sie uns im Alltag enorm viel Arbeit ab. Dabei gibt es (fast) nichts, was sie nicht könnten.

Folgendes Skript löscht alle Dateien (wenn -whatif nicht da ist – mit whatif wird ein „Testlauf“ durchgeführt, ohne zu löschen) auf Laufwerk R, die älter als 30 Tage (das Minus vor der 30 nicht vergessen, damit vom aktuellen Datum 30 Tage in die Vergangenheit gezählt wird, sonst wird in die Zukunft gezählt und hier kann noch nichts gelöscht werden) sind.

$DatumVor30Tagen = (Get-Date).AddDays(-30)
$Source = „r:\“
start-transcript „$Source $(get-date -format yyMMdd).txt“
get-childitem „$Source “ -recurse | where {$_.lastwritetime -lt $DatumVor30Tagen -and -not $_.psiscontainer} |% {remove-item $_.fullname -force -verbose -whatif}

Außerdem wird der Löschvorgang in eine Textdatei protokolliert. Diese liegt im Quellverzeichnis (hier R) und hat das Format Tagesdatum (JahrMonatTag) .txt.

 

Power Shell Skript zum Löschen bestimmten Ordnern mit Inhalt die älter als N Tage sind

Ein einfaches Power Shell Skript zum Löschen von Ordnern und deren Inhalt mit folgenden Eigenschaften:

  • Durchsucht wird das angebene Laufwerk (im Beispiel R:\)
  • Die Ordner müssen älter als N Tage sein (im Beispiel 30 Tage) – wichtig ist das Minus, damit die 30 Tage in die Vergangenheit gerechnet werden
  • Nur Ordner mit bestimmten Namen (in diesem Beispiel beginnend mit IMG*) – * dient hierbei als Wildcard – vor / in / hinter dem Namen

dir "r:\" | ?{$_.lastwritetime -lt ((Get-Date).AddDays(-30)) -and $_.PSIsContainer -and $_.Name -like 'IMG*'} | %{Remove-Item $_.FullName -force -recurse}

Dieses Skript löscht im Hintergrund, ohne Abfrage, und schreibt auch keine Log-Datei