2016-04-13 21 views
1

有沒有辦法獲得腳本塊中所有遠程變量的列表?獲取腳本塊中的所有遠程變量

考慮以下幾點:

$x = 1 
$block = { Write-Host $using:x } 
Invoke-Command -Session (New-PSSession) -ScriptBlock $block 

在$塊的,有沒有得到利用可用$列表的任何方式:範圍的變量?

$x = 1 
$block = { Get-Variable } 
Invoke-Command -Session (New-PSSession) -ScriptBlock $block 

不會產生$ x作爲一個可獲得的變量

回答

1

簡短的回答是:你不能。

遠程方不知道有關變量的任何信息。它們被序列化,然後嵌入反序列化代碼和文字序列化XML。

如果你是一個寫劇本博克,那麼我建議你只是每個$Using:變量分配到腳本塊內的局部變量:

$block = { 
    $x = $Using:x 
    $y = $Using:y 
} 

我寫的how $Using: is implemented更詳細的解釋在我的博客關於在DSC腳本資源中使用它。

相關問題