Jump to content

Powershell GPUpdate


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo liebe mitlesenden,

Ich stecke gerade in der Zwickmühle.

Ich möchte meine Scripte aktuell nicht mehr mit CMD erstellen sondern mit PS

Jetzt hänge ich an einer eigentlich simplen Stelle.

Ich brauche eine GPUPDATE /force um nach einer Deinstallation einer Software die normal Per GPO auf dem Client landet wieder eine erneute, saubere Installation zu erhalten.

Also Step 1 Uninstall

Step 2 In der Regestry die AppMgmt Einträge löschen

Step 3 GPUpdate

Step 4 reboot

 

Mein Problem ist nun:

Mache ich in einer CMD einen gpupdate /force dann klappt das

Okay er will ein Ja oder Nein für den Reboot, dass kann ich aber mit Echo n | gpupdate /forec umgehen.

 

Mache ich einen invoke-gpupdate in PS dann hab ich keinen Einfluss wann der Misteimer sich dazu herab läßt den Update auszuführen

Mein reboot am ende des Scripts kommt dann noch vor dem Update und ich steh im Wald.

 

Versuche ich mit Start-Process "cmd.exe echo n | gpupdate /force" das ganze zu starten kommt nix dabei rum.

 

Hat jemand hier eine funktionierende Lösung.

 

Vielen dank vorab schon für die Mühe die ich euch mache.

 

Grüße

Christoph

Geschrieben (bearbeitet)
vor 7 Minuten schrieb koenigch:
 

Hat jemand hier eine funktionierende Lösung.

Ist es eine Frage ohne Fragezeichen oder eine Feststellung mit verdrehter Wortfolge?

Invoke-Command -ScriptBlock { gpupdate }

wäre eine funktionierende Lösung. Nativ in PowerShell gibt es keinen Befehl, mit dem man die GPO-Anwendung *jetzt* erzwingen kann.

bearbeitet von cj_berlin
  • Haha 1
  • Verwirrend 1
Geschrieben

Hi,

 

mich wunder, dass noch niemand erwähnt hat, dass Softwareverteilung per GPO einfach Mist ist. ;-)

 

Fang doch mit dieser Software an und lass das Verteilen per GPO sein. Dann benötigst du anstelle "gpupdate /force" nur noch ein

$objProcess = Start-Process -FilePath "Pfad zum Setup / Pfad zu msiexec" `
  -ArgumentList "/deine Optionen /Schalter" `
  -PassThru
  
Wait-Process -InputObject $objProcess

Restart-Computer -Force

 

Punkt 1 und 2 lassen sich sicherlich auch noch in PowerShell umsetzen. Noch besser (und einfacher) wäre vermutlich eine Softwareverteilungslösung bzw. ein Endpointmanagement.

 

Gruß

Jan

  • Like 3
Geschrieben

Danke für die Antworten,

 

ja, dass GPOs nur sehr wenig taugen für Software Verteilung ist mir auch schon lange klar.

Es sind auch nur ein paar wenige rudimentäre Brocken, die wir so auf die Rechner bringen.

Und das eigentlich auch nur wenn die Kiste frisch aufgesetzt wird, dann bekommt sie noch 3-4 Anwendungen drauf gepackt.

Da haben wir leider einen Kandidaten der Zickt manchmal und hier wollte ich für die Service Kollegen ein Script reichen, mit dem sie einfach ein uninstall machen, die Registry Einträge im in Grouppenrichtlinien\AppMgmt entfernt, bootet und den Schlunz wieder drauf bringt.

Ich bin auch schon in einigen Scipten dazu über gegangen Software per CMD oder PS zu suchen und bei Bedarf zu installieren. Klar, das klappt zuverlässiger.

 

Also nochmal herzlichen Dank für Eure Antworten

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...