Das Terminal-Server Cleanup bzw. aufräumen ist leider notwendig, um den Server von unnötigem Ballast zu befreien.

Hier ist eine Sammlung verschiedener Skripts und PowerShell Snippets, um Wartungsarbeiten auf Terminalservern zu erleichtern.


Download-Ordner aller Benutzer aufräumen

nur Downloads, die älter als 30 Tage sind:

Get-ChildItem C:\Users\*\Downloads\* | Where-Object {$_.LastWriteTime -lt (Get-Date).AddDays(-30)} | Remove-Item -Force -Recurse -ErrorAction SilentlyContinue

unbegrenzt:

Get-ChildItem C:\Users\*\Downloads\* | Remove-Item -recurse -force -ErrorAction SilentlyContinue

Alte Benutzer-Profile vom Server löschen

Hier möchte ich auf ein Skript von http://woshub.com/delete-old-user-profiles-gpo-powershell/ verweisen. Angepasst habe ich Zeile 3, die sonst einen Fehler liefert.
Dieses Skript löscht das Profil eines Kontos, sofern die letzte Anmeldung länger als 60 Tage zurückliegt.
Mittels $ExcludedUsers lassen sich bestimmte Konten von der Löschung ausschließen.

#The list of accounts, which profiles must not be deleted
$ExcludedUsers ="Public","zabbix_agent","svc",”user_1”,”user_2”
$LocalProfiles=Get-WMIObject -class Win32_UserProfile | Where {(!$_.Special) -and (!$_.Loaded) -and ($_.LastUseTime -lt (Get-Date).AddDays(-60))}
foreach ($LocalProfile in $LocalProfiles)
{
if (!($ExcludedUsers -like $LocalProfile.LocalPath.Replace("C:\Users\","")))
{
$LocalProfile | Remove-WmiObject
Write-host $LocalProfile.LocalPath, "profile deleted” -ForegroundColor Magenta
}
}

(wird sicherlich noch erweitert….)

Teile diesen Beitrag

Schreibe einen Kommentar