2016-06-09 2 views
1

다른 컴퓨터에서 Invoke-Command이라는 함수를 호출하는 PowerShell 스크립트를 시작합니다. 이 모든 세션에서 사용할 수있는 변수를 선언하고 싶습니다.세션에서 변수 선언하기

$var = "global" 

function do-function{ 
    $var = "function" 
    return $var 
} 

$var 
invoke-command -ComputerName NameOfComputer -scriptblock ${function:do-function} 
$var 

출력 :

global 
function 
function 

답변

0

을 당신은 변수에 Invoke-Command cmdlet의 반환 값을 할당해야 :

$var = "global" 

function do-function{ 
    $var = "function" 
    return $var 
} 

$var 
$var = invoke-command -ComputerName NameOfComputer -scriptblock ${function:do-function} 
$var 

global 
function 
global 

내 목표는 얻을 것입니다

또한, scriptblock은 다음과 같이 정의 할 수 있습니다.

$myScriptBlock = { 
    # .... 
} 

invoke-command -ComputerName NameOfComputer -scriptblock $myScriptBlock