Ich habe ein Skript mit der Absicht geschrieben, den WSUS- Prozess schnell zu verwalten , und ich habe ein paar Dinge, die ich fest codiert habe, die ich aber lieber mit PowerShell erledigen möchte. Insbesondere die 'Zielgruppen' für Approve-WsusUpdate.
Momentan mache ich so etwas:
#Select Target Group for Update Approval:
$TargetComputerGroups = "All Computers", "Unassigned Computers", "Clients", "Servers", "Test", "View Templates"
$UserPrompt = @"
Please select a Computer Group from the below options:
1) All Computers (Selects all of the below)
2) Unassigned Computers
3) Clients
4) Servers
5) Test
6) View Templates
Enter selection
"@
###Record user selection to varirable
$TargetComputerGroupTemp = Read-Host -Prompt $UserPrompt
###Convert their choice to the correct 0-index array value.
$TargetComputerIndex = $TargetComputerGroupTemp -1
$ComputerTarget = $TargetComputerGroups[$TargetComputerIndex]
Gibt es einen Befehl 'get-target', mit dem ein Array verfügbarer Zielgruppen erstellt wird? Auf diese Weise konnte ich die manuelle Deklaration von entfernen $TargetComputerGroups
.
Außerdem möchte ich den $UserPrompt
Code verbessern (auch hier werden manuelle Deklarationen vermieden). Ich denke so etwas zu tun'$i for $i in $TargetComputerGroups' write-host 'Press 1 for i'
Davon abgesehen bin ich SEHR neu in diesem Bereich, daher weiß ich nicht, wie ich das am besten tun kann (idealerweise ordnen Sie ihre Auswahl der richtigen Gruppe in dieser Aussage zu!).
quelle
Wie Drifter104 sagte, ist noch kein PowerShell-Modul zum Verwalten von WSUS verfügbar, obwohl eines in der nächsten Windows Server-Version enthalten sein wird ( https://technet.microsoft.com/en-us/library/hh826166.aspx ). In der Zwischenzeit müssen Sie die .NET-Assembly für die Verwaltung von WSUS importieren und verwenden. Eine der größten Funktionen in PowerShell ist, dass Sie, auch wenn es keine nativen Cmdlets zum Ausführen einer bestimmten Aufgabe enthält, Zugriff auf die gesamte .NET-Umgebung haben und tatsächlich alles tun können, was Sie von einem aus tun können .NET-Anwendung.
Informationen zum Skriptteil: Sobald Sie die Namen Ihrer WSUS-Gruppen in einem Array erhalten haben, ist es recht einfach, die Ihren Benutzern angezeigte Liste zu erstellen. Durchlaufen Sie einfach das Array und verwenden Sie einen Index für die Auswahlnummer:
quelle