Hallihallo,
ich habe den code und deiner Fehlerbeschreibung mal einfach kurz und knapp in ChatGPT eingetippt, der hat folgendes ausgespuckt:
Die Fehlermeldung deutet darauf hin, dass der Parameter -ComputerName für Invoke-Command möglicherweise nicht in der richtigen Form angegeben wurde. Die Variable $COM enthält eine Liste von Computerobjekten, nicht nur eine Liste von Computernamen.
Sie können die Computerliste durch die Verwendung der Eigenschaft Name der $COM-Variable extrahieren, bevor Sie sie an Invoke-Command übergeben. Versuchen Sie es mit dem folgenden Code:
$COM = Get-ADComputer -Filter 'Name -like "NB*"' -Properties Name $ComputerNames = $COM.Name Invoke-Command -ComputerName $ComputerNames -ScriptBlock {Restart-Computer}
Dieser Code verwendet die Eigenschaft Name, um eine Liste von Computernamen aus der $COM-Variable zu extrahieren und in der Variablen $ComputerNames zu speichern. Dann wird der Parameter -ComputerName von Invoke-Command mit der Liste von Computernamen aufgerufen.
Hab den zwar nie in der Praxis für meine Powershell skripts benutzt, aber vielleicht wird es hier was 🤷♂️.