WPS 10 Geschrieben 19. Januar 2017 Melden Teilen 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. Zitieren Link zu diesem Kommentar
tesso 375 Geschrieben 19. Januar 2017 Melden Teilen Geschrieben 19. Januar 2017 Schau mal hier: https://blogs.msdn.microsoft.com/powershell/2009/12/29/how-to-pass-arguments-for-remote-commands/ Zitieren Link zu diesem Kommentar
Beste Lösung WPS 10 Geschrieben 20. Januar 2017 Autor Beste Lösung Melden Teilen 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} Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.