PowerShell WinRM Übergabe von Variablen von lokal an remote System
Hallo,
ich bin gerade dabei in einem Skript eine PS Remote Session zu öffnen. Das funktioniert auch gut, so dass ich auf dem entfernten Server Befehle ausführen kann. Nun möchte ich das ganze in einem Skript tun. Die Verbindung wird auch aufgebaut, aber mein Kommando das Remote ausgeführt werden soll, endet in einem Fehler.
In dem Kommando stecken zwei Variablen, die ich lokal definiert habe.
Meine Kommando rufe ich folgendermaßen auf:
Bisher habe ich im Internet nur Code gefunden bei dem eine Variable übergeben wird. Leider funktioniert nicht einmal das.
Gruß
derhoeppi
ich bin gerade dabei in einem Skript eine PS Remote Session zu öffnen. Das funktioniert auch gut, so dass ich auf dem entfernten Server Befehle ausführen kann. Nun möchte ich das ganze in einem Skript tun. Die Verbindung wird auch aufgebaut, aber mein Kommando das Remote ausgeführt werden soll, endet in einem Fehler.
In dem Kommando stecken zwei Variablen, die ich lokal definiert habe.
Meine Kommando rufe ich folgendermaßen auf:
Invoke-Command -Session $session -ScriptBlock {(Param $variable1, $variable2) Write-Host "Das ist Var1 " $variable1 " und das ist Var2 " $variable2}
Bisher habe ich im Internet nur Code gefunden bei dem eine Variable übergeben wird. Leider funktioniert nicht einmal das.
Gruß
derhoeppi
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 284130
Url: https://administrator.de/forum/powershell-winrm-uebergabe-von-variablen-von-lokal-an-remote-system-284130.html
Ausgedruckt am: 10.05.2025 um 21:05 Uhr
1 Kommentar

Moin,
du hast vergessen mit dem Parameter -Argumentlist von "Invoke-Command" die Variablen an den Skriptblock zu übergeben
http://stackoverflow.com/questions/4225748/how-do-i-pass-named-paramete ...
Gruß jodel32
-edit- und die Angabe der Parameterliste ist falsch, die muss so aussehen:
Die Klammer also hinter param nicht davor.
Insgesamt dann also so
du hast vergessen mit dem Parameter -Argumentlist von "Invoke-Command" die Variablen an den Skriptblock zu übergeben
http://stackoverflow.com/questions/4225748/how-do-i-pass-named-paramete ...
Gruß jodel32
-edit- und die Angabe der Parameterliste ist falsch, die muss so aussehen:
param ($variable1, $variable2)
Insgesamt dann also so
Invoke-Command -Session $session -ScriptBlock {Param($variable1, $variable2) Write-Host "Das ist Var1 " $variable1 " und das ist Var2 " $variable2} -Argumentlist $localvar1,$localvar2