133199
Goto Top

Per POWERSHELL dem angemeldeten user sein profil von "temps" usw. bereinigen

hallo zusammen....

wie der titel schon aussagt möchte ich per powershell (und nur per POWERSHELL !!)
den angemeldeten user sein Profil von datenmüll und bestimmten Caches ablagen befreien.
der User selber hat zum teil keine Berechtigung diese zu löschen.

das script wird mit einer Verteilungssoftware (baramundi) verteilt.

den angemeldeten user zu ermittel kann ich mit diesem script.

Get-WmiObject Win32_ComputerSystem -ComputerName $Rechner | Select-Object UserName

das funktioniert dann auch, jedoch müsste der benutzername in ein file geschrieben werden ,damit der nächste befehl diesen benutzername verwendet.
weiter müsste ich dann in dem ermittelten Benutzerprofil das unten ausgeführte script ausführen

Get-ChildItem C:\Users\BENUTZER\AppData\Roaming\ | where-object { $_.LastWriteTime -lt (get-date).adddays(-25)} | Foreach { Get-ChildItem $_.pspath | Remove-Item -recurse } 


das funktioniert auch im einzelnen.

ABER, wie führt man das in ein einzelnes script zusamen so das es in einem rutsch funktioniert ?

vielen dank für eure ideen.

bruno

Content-ID: 336944

Url: https://administrator.de/contentid/336944

Ausgedruckt am: 23.11.2024 um 01:11 Uhr

Penny.Cilin
Penny.Cilin 05.05.2017 um 09:49:37 Uhr
Goto Top
Zitat von @133199:

hallo zusammen....
Moin,

wie der titel schon aussagt möchte ich per powershell
den angemeldeten user sein Profil von datenmüll befreien.
OK.

den angemeldeten user zu ermittel kann ich mit diesem script.
Verwende bitte Codetags, wie das geht steht hier.

Get-WmiObject Win32_ComputerSystem -ComputerName $Rechner | Select-Object UserName

das funktioniert dann auch.
OK.
weiter müsste ich dann in dem ermittelten Benutzerprofil das unten ausgeführte script ausführen

Get-ChildItem C:\Users\BENUTZER\AppData\Roaming\ | where-object { $_.LastWriteTime -lt (get-date).adddays(-25)} | Foreach { Get-ChildItem $_.pspath | Remove-Item -recurse }

das funktioniert auch im einzelnen.
OK.

ABER, wie führt man das in ein einzelnes script zusamen ?
Das heißt Du hast zwei Einzeiler, nun erstelle doch ein Powershellskript (.ps1) Datei, wo die due beiden Befehle hineinkopierst und abspeicherst.
Dann rufst Du das Powershellskript (die erstellte .p1-Datei) auf.

Dazu kannst Du die Powershell ISE verwenden. Damit kannst Du Dein Skript auch debuggen, falls Fehler auftreten.


vielen dank für eure ideen.

Bruno


Grus Penny.
132895
132895 05.05.2017 aktualisiert um 10:08:35 Uhr
Goto Top
Stichwort:
gwmi win32_Userprofile | select -Expand LocalPath
Natürlich die Systemprofile vorher ausfiltern!

p.s. den Usern einfach so Settings unter dem Hintern wegziehen?? Dann wünsche ich viel Spaß mit defekten Profilen denn in der Registry sind oft Verweise auf das Roaming-Profile vorhanden und wenn da dann nichts mehr ist, knallt es oft!
cleanmgr ist dein Freund.

Gruß
Kraemer
Kraemer 05.05.2017 um 10:03:14 Uhr
Goto Top
Moin,

ich habe keine Ahnung was du konkret löschen willst. Das letzte mal wo ich sowas gebastelt habe, habe ich mich der Datenträgerbereinigung bedient:
https://support.microsoft.com/de-de/help/315246/how-to-automate-the-disk ...

Gruß
Penny.Cilin
Penny.Cilin 05.05.2017 um 10:07:40 Uhr
Goto Top
Dass ist natürlich die bessere und korrekte Vorgehensweise.

Best practise sozusagen.


Gruss Penny.
sabines
sabines 05.05.2017 um 10:11:01 Uhr
Goto Top
Moin,

Du solltest besser über ein Benutzer Anmelde Skript konkrete Tempdateien löschen und brauchst dabei den angemeldeten User nicht mal filtern. Das machst Du mit %USERPROFILE%, für den aktuell angemeldeten User.

Um veraltete Profile zu löschen gibt es andere Methoden https://helgeklein.com/free-tools/delprof2-user-profile-deletion-tool/

Gruss
133199
133199 05.05.2017 um 10:35:40 Uhr
Goto Top
hmmm..
danke, aber die frage sollte eigentlich schon ganz gelesen werden...
greez
BaGaJoize
BaGaJoize 05.05.2017 um 10:41:00 Uhr
Goto Top
Darf ich fragen aus welchem Grund du ein Powershell Script nutzen möchtest?

Wieso nutzt du nicht einfach ein BDS, wenn du eh baramundi im einsatz hast?
Penny.Cilin
Penny.Cilin 05.05.2017 um 10:43:51 Uhr
Goto Top
Zitat von @133199:

hmmm..
danke, aber die frage sollte eigentlich schon ganz gelesen werden...
greez
Wie ich schon geschrieben habe, füge die beiden Befehle in eine Datei ein und speichere Sie als Powershellskript (z. Beisp.: Cleanup_Profiles.ps1) ab.
sabines
sabines 05.05.2017 um 10:54:27 Uhr
Goto Top
Wie ich schon geschrieben habe, füge die beiden Befehle in eine Datei ein und speichere Sie als Powershellskript (z. Beisp.: Cleanup_Profiles.ps1) ab.

Nutzt nix, muss wohl ein BWLer sein face-wink
132895
132895 05.05.2017 aktualisiert um 10:58:28 Uhr
Goto Top
Zitat von @sabines:
Nutzt nix, muss wohl ein BWLer sein face-wink
Oder ein höriger Azubi face-wink der sich hier seine Hausaufgaben erledigen lassen will.

Ich wette in ein paar Minuten ist sein Account wieder Geschichte ...
Penny.Cilin
Penny.Cilin 05.05.2017 um 10:58:28 Uhr
Goto Top
Zitat von @sabines:

Wie ich schon geschrieben habe, füge die beiden Befehle in eine Datei ein und speichere Sie als Powershellskript (z. Beisp.: Cleanup_Profiles.ps1) ab.

Nutzt nix, muss wohl ein BWLer sein face-wink
Ooch sabines, wir wollen doch am Freitag nicht bösartig ein.
Ach so, Dein Kommentar war sarkastisch gemeint.
Da habe ich wohl die Ironietags übersehen.

Kommt von zuviel lernen face-wink


Gruss Penny.
133199
133199 05.05.2017 um 11:01:04 Uhr
Goto Top
sorry, aber wenn du etwas Ahnung von PS hättest, würdest du merken
dass diese befehle zusammen nicht funktionieren.
es fehlt ein zwischenschritt.

aber hier bin ich ich anscheinend falsch.
BaGaJoize
BaGaJoize 05.05.2017 um 11:02:41 Uhr
Goto Top
@133199

wanna know it;)
132895
132895 05.05.2017 aktualisiert um 11:14:28 Uhr
Goto Top
Und wech ... Ein schweizer Eidgenosse, ward er gewesen ... er wandert nun gemeinsam mit dem Steuerspitzel in sein Heimatland face-big-smile
BaGaJoize
BaGaJoize 05.05.2017 um 11:13:48 Uhr
Goto Top
Zitat von @132895:

Zitat von @sabines:
Nutzt nix, muss wohl ein BWLer sein face-wink
Oder ein höriger Azubi face-wink der sich hier seine Hausaufgaben erledigen lassen will.

Ich wette in ein paar Minuten ist sein Account wieder Geschichte ...


wette gewonnen:D