Zum Inhalt springen
  • 0

PowerShell | Invoke-Command


Systemer

Frage

Hi Zusammen,

 

ich komme bei einer wahrscheinlich sehr simplen Aufgabe nicht weiter....

Ich benötige in einem Teil des Skriptes, dass die Notebooks, welche in der Variable sind neustarten sollen, jedoch erhalte ich hierbei immer eine Fehlermeldung.

Ausschnitt Code:

$COM =Get-ADComputer -Filter 'Name -like "NB*"' -Properties * | select name

Invoke-Command {Restart-Computer} -computer $COM

 

Fehlermeldung:

Invoke-Command : Mindestens ein Computername ist ungültig. Wenn Sie einen URI übergeben möchten, verwenden Sie den Parameter "-ConnectionUri", oder übergeben Sie URI-Objekte anstelle von Zeichenfolgen.

 

 

 

 

 

Vielen Dank vorab! :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

4 Antworten auf diese Frage

Empfohlene Beiträge

  • 0

Hi,

ich bin kein Powershell Profi, sondern lerne es auch nebenbei.

Ich frage mich warum du die Properties des Objekts auflistest und den Namen auswählst. Wäre es mit folgenden Code auch nicht möglich? (Bin mir unsicher)

Get-ADComputer -Filter 'Name -like "NB*"' | Foreach-Object {Restart-Computer} 

Oder musst du zwingend eine Variable benutzen?

Bearbeitet von Clay61
Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0

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 🤷‍♂️.

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0
vor 39 Minuten schrieb Ilo496:

Die Variable $COM enthält eine Liste von Computerobjekten, nicht nur eine Liste von Computernamen.

Das ist falsch, es ist eine Liste mit Computernamen, -ComputerName möchte meiner Meinung nach genau einen Namen, keine Liste.

ich mach das so
 

$ComputerNames = Get-ADComputer -Filter "Name -Like 'Laptop*'" -Properties dNSHostName |Select-Object -ExpandProperty dNSHostName
foreach($Computer in $ComputerNames) {
   .
   .
   .
}

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0

Servus Zusammen,

 

Vielen Dank euch, jetzt funktionierts.

ich habe eure Lösungen probiert, am besten hat für mich die Lösung mit den DNS Namen funktioniert.

Warum genau es mit Namen leider funktioniert weiß ich leider nicht, aber die Auflösung mit DNS Namen reicht aus..... :)

 

Besten Gruß

Systemer

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Diese Frage beantworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...