Skript zur Bereinigung von Benutzerprofilen
Guten Tag Zusammen
Ich habe mir etwas den Kopf zerbrochen und stehe wahrscheinlich total auf dem Schlauch. Vielleicht kann mir ja jemand von euch den richtigen Input geben.
Mir ist aufgefallen, dass die Benutzerprofile auf dem Profilserver unter %appdata%\Microsoft\windows\recent sehr viele "zuletzt geöffnete Dateien" enthalten. Diese gehen aber teilweise mehr als zwei Jahre zurück. Bei gewissen Benutzern sind dort über 3000 Dateien drin, was die Ladezeit der Profile extrem verlangsamt. Klar könnte ich das Verzeichnis per Citrix UPM von der Synchronisierung ausschliessen, jedoch wäre das Geschrei dann gross, wenn einerseits die wirklich zuletzt geöffneten Dateien, und andererseits auch die angepinnten Dateien in den Jumplists verschwunden wären.
Was möchte ich erreichen?
Ich möchte auf dem Profilserver ein Skript einmal im Monat per Task Scheduler ausführen, welches alle Dateien im Verzeichnis \Recent löscht, die älter sind als 30 Tage. Dabei sollen aber die beiden Unterordner "AutomaticDestination" und "CustomDestinations", welche sich ebenfalls in diesem Verzeichnis befinden, nicht gelöscht werden. Ebenso soll deren Inhalt beibehalten werden.
Folgendes habe ich bisher hinbekommen:
Das Skript funktioniert eigentlich schon recht gut. Das einzige Problem ist noch, dass er bei gewissen Profilen (nicht bei allen, obwohl die Struktur immer die Gleiche ist), nachfragt, ob er die beiden Unterordner "AutomaticDestinations" und "CustomDestinations" mit löschen soll. Wenn ich das manuell mit "Nein" beantworte, löscht er nur den Datei-Inhalt von \Recent bis auf 30 Tage zurück und geht dann zum nächsten Verzeichnis.
Wir bekomme ich es nun hin, dass nur die Files in \Recent gelöscht werden, und sonst nichts?
Danke schon im Voraus für eure Hilfe.
Ich habe mir etwas den Kopf zerbrochen und stehe wahrscheinlich total auf dem Schlauch. Vielleicht kann mir ja jemand von euch den richtigen Input geben.
Mir ist aufgefallen, dass die Benutzerprofile auf dem Profilserver unter %appdata%\Microsoft\windows\recent sehr viele "zuletzt geöffnete Dateien" enthalten. Diese gehen aber teilweise mehr als zwei Jahre zurück. Bei gewissen Benutzern sind dort über 3000 Dateien drin, was die Ladezeit der Profile extrem verlangsamt. Klar könnte ich das Verzeichnis per Citrix UPM von der Synchronisierung ausschliessen, jedoch wäre das Geschrei dann gross, wenn einerseits die wirklich zuletzt geöffneten Dateien, und andererseits auch die angepinnten Dateien in den Jumplists verschwunden wären.
Was möchte ich erreichen?
Ich möchte auf dem Profilserver ein Skript einmal im Monat per Task Scheduler ausführen, welches alle Dateien im Verzeichnis \Recent löscht, die älter sind als 30 Tage. Dabei sollen aber die beiden Unterordner "AutomaticDestination" und "CustomDestinations", welche sich ebenfalls in diesem Verzeichnis befinden, nicht gelöscht werden. Ebenso soll deren Inhalt beibehalten werden.
Folgendes habe ich bisher hinbekommen:
@echo off
SET count=1
SET rootPath=D:\Daten\upmprofiles\Testordner\
FOR /f "tokens=*" %%G IN ('dir %rootPath% /b /AD') DO (
forfiles /p %rootPath%%%G\UPM_Profile\Appdata\roaming\microsoft\windows\recent\ /d -30 /c "cmd /c del @file"
echo %count%:%rootPath%%%G
set /a count+=1
)
pause
Das Skript funktioniert eigentlich schon recht gut. Das einzige Problem ist noch, dass er bei gewissen Profilen (nicht bei allen, obwohl die Struktur immer die Gleiche ist), nachfragt, ob er die beiden Unterordner "AutomaticDestinations" und "CustomDestinations" mit löschen soll. Wenn ich das manuell mit "Nein" beantworte, löscht er nur den Datei-Inhalt von \Recent bis auf 30 Tage zurück und geht dann zum nächsten Verzeichnis.
Wir bekomme ich es nun hin, dass nur die Files in \Recent gelöscht werden, und sonst nichts?
Danke schon im Voraus für eure Hilfe.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 666006
Url: https://administrator.de/forum/skript-zur-bereinigung-von-benutzerprofilen-666006.html
Ausgedruckt am: 22.12.2024 um 05:12 Uhr
6 Kommentare
Neuester Kommentar