Einige von euch werden es kennen, gerade wenn man etwas „kreativer“ arbeitet, landet doch der ein oder andere Müll auf dem Desktop und irgendwann quillt er über.

Aufräumen mit Powershell

Dass die Powershell unter Windows mächtig ist, sollte mittlerweile jeder gehört haben. Was man damit aber machen kann, haben vermutlich die wenigsten bisher gesehen.

Das Skript

Aus dem Grund habe ich mir vor einigen Monaten ein Skript gebaut, was meinen Desktop aufräumt und die Daten in einen wählbaren Pfad legt. Hierbei können gewisse Dateiendungen (Verknüpfungen etc.) ausgeschlossen werden.

Die Dateien werden dann verschoben und nach Datum des letzten Schreibdatums einsortiert:

$quelle = [Environment]::GetFolderPath("Desktop")
$excluded = @("*.lnk", "*.url", "*.ps1", "*.bat", "*.msc", "PSHit")
$ziel = "\\PFAD ZU DEINER NAS\"
$files = dir $quelle -Exclude $excluded

Write-Host "-------------------- Cleanup Skript --------------------"
Write-Host "Kopiere von $quelle"
Write-Host "Kopiere von $ziel"
Write-Host "Ausgeschlossene Dateitypen $excluded"

foreach($file in $files){
    #$newfolder = "$ziel\$($file.LastWriteTime.Year)\$($file.LastWriteTime.Month)"
  $newfolder = "$ziel\$(get-date $file.LastWriteTime -Format 'yyyy-MM')"
    if (!(Test-Path $newfolder)){md $newfolder -Force}
    if (!(Test-Path "$newfolder\$($file.Name)")){
        move-item $file.FullName $newfolder -Force
        Write-Host "Verschiebe $file.FullName nach $newfolder"
    }
}

Die Daten landen bei mir auf meiner , falls ich sie noch einmal brauchen sollte. Falls nicht, kann man sich auch einfach ein Skript zum Bereinigen bauen.

Warum ein aufgeräumter Desktop wichtig ist

Ein überladener Desktop ist nicht nur optisch unschön, sondern kann auch die Produktivität beeinträchtigen. Studien zeigen, dass visuelle Unordnung die Konzentrationsfähigkeit mindert. Zudem können viele Desktop-Icons die Startzeit von Windows verlangsamen, da das System beim Laden die Miniaturansichten aller Dateien generieren muss.

Das Skript erweitern

Das PowerShell-Skript lässt sich beliebig anpassen. Du könntest beispielsweise bestimmte Dateitypen in verschiedene Ordner sortieren: Bilder nach „Screenshots", Dokumente nach „Dokumente", und Downloads nach „Archiv". Auch eine Archivierung nach Datum ist möglich, sodass Dateien älter als 30 Tage automatisch in einen „Archiv"-Ordner verschoben werden.

Für die automatische Ausführung kannst du das Skript als geplante Aufgabe einrichten, die z.B. jeden Freitag um 18 Uhr läuft – so startest du jede Woche mit einem aufgeräumten Desktop.

Weiterführende Artikel

Wenn dir dieser Artikel gefallen hat, könnten dich auch diese Beiträge interessieren:

Microsoft SQL-Server mit Powershell neustarten
GitHub Repos automatisiert archivieren
GitHub-Repos schnell und einfach archivieren? Ich zeig dir wie!

Artikel teilen:Share article: