WPS 10 Geschrieben 19. Januar 2017 Melden Geschrieben 19. Januar 2017 Hallo zusammen, ich sitze grade vor folgendem Problem. Ich habe mir ein Skript geschrieben, welches ich in der Konsole ausführe. Dort wird eine Variable über Read-Host gesetzt und soll später in einen Befehl auf einen mehreren Servern über Invoke-Comand verwendet werden. Nun steh ich vor dem Problem diese Variable auch auf dem Remote-Client verfügbar zumachen. Meine Ansatz war jetzt im Skript als erstes die Variable zu setzen um danach einen Skriptblock der die Variable beinhaltet zu definieren und diesen später auf mehreren Servern mit Invoke-Comand auszuführen. Wird dann im Skriptblock nicht der Wert der Variable gesetzt. $IN = Read-Host "Inventarnummer" $Code = { Get-Printerport | ? {$_.Name -like "$IN"} } foreach ($X in $Server){ Invoke-Command -ScriptBlock $Code -ComputerName $X} Hat jemand vielleicht eine Idee wie man das realisieren kann? Oder vielleicht einen anderen Ansatz? Wichtig ist nur, dass der Wert für die Variable immer erst bei Ausführung des Skriptes gesetzt werden kann.
tesso 384 Geschrieben 19. Januar 2017 Melden Geschrieben 19. Januar 2017 Schau mal hier: https://blogs.msdn.microsoft.com/powershell/2009/12/29/how-to-pass-arguments-for-remote-commands/
Beste Lösung WPS 10 Geschrieben 20. Januar 2017 Autor Beste Lösung Melden Geschrieben 20. Januar 2017 Hallo Tesso, danke für den Tipp! Hab es jetzt mit New-PSSession gelöst. Invoke-Command -Session $s -Script { Get-Printerport -Name $args[0]} -Args $IN}
Empfohlene Beiträge
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 erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden