h41msh1c0r
Goto Top

Powershell invoke Command Variablen übergeben

Guten Morgen in die Runde,

Die Übergabe von Variablen scheint an sich nicht wild:
"http://www.powershellmagazine.com/2013/01/23/pstip-passing-local-variables-to-a-remote-session-in-powershell-3-0"

Mir gibt er gerade allerdings nur einen Fehler aus das er den Parameter Computer_Name nicht verarbeiten könne, da er ihn nicht in einen String konvertieren kann.
function Get-ServiceRunning {
	[CmdletBinding()]
	[OutputType([System.Int32])]
	param(
		[Parameter(Position=0, Mandatory=$true)]
		[ValidateNotNullOrEmpty()]
		[System.String]
		$Computer_Name,

		[Parameter(Position=1)]
		[ValidateNotNullOrEmpty()]
		[System.String]
		$ServiceName
	)
	try {
                $wert = "0"	  
   
		$result = Invoke-Command -ComputerName $Computer_Name -ScriptBlock { Get-Service -DisplayName "$using:ServiceName" }  
		
		if($($result).Status -eq "stopped"){$wert='0'}  
		if($($result).Status -eq "running"){$wert='1'}  

	}
	catch {
		throw
		$wert = "-1"  
	}
	return $wert
}

Get-ServiceRunning("ServerA","ServiceA")  

Hierbei ist es egal ob ich ihn als $Computer_Name oder $using:ComputerName in die Funktion einbaue.

Wo ist hier die Krux?

VG

Content-ID: 343027

Url: https://administrator.de/forum/powershell-invoke-command-variablen-uebergeben-343027.html

Ausgedruckt am: 16.04.2025 um 22:04 Uhr

133417
Lösung 133417 11.07.2017 aktualisiert um 07:42:10 Uhr
Goto Top
Get-ServiceRunning("ServerA","ServiceA")
Noch kein Kaffee gehabt ? face-wink

So ruft man nie und nimmer eine Powershell-Funktion auf ....

Get-ServiceRunning "ServerA" "ServiceA"

Klammern und Komma weglassen.

Gruß
H41mSh1C0R
H41mSh1C0R 11.07.2017 um 07:43:24 Uhr
Goto Top
Moin,

gerade selber drauf gefallen und auch noch keinen Kaffee gehabt. =)

VG
133417
133417 11.07.2017 aktualisiert um 08:10:43 Uhr
Goto Top
Zitat von @H41mSh1C0R:
und auch noch keinen Kaffee gehabt. =)
Na dann virtuell einen rüber reich, achtung heiß und schwarz face-smile.
H41mSh1C0R
H41mSh1C0R 11.07.2017 aktualisiert um 08:22:12 Uhr
Goto Top
Danke + *schlürf* --> zur Meetingrunde schleich ^^