2

基本的に私の問題はこれに帰着します.ServerManagerモジュールを使用してリモートサーバーでコードを実行する必要がありますが、出力をローカルシェルに返します.

WKS01 で実行されるコードは次のとおりです。

Enter-PsSession SVR01
Import-Module ServerManager
$Roles = @(Get-WindowsFeature | Where {$_.installed -eq $true})

ここで、WKS01 の $Roles のデータを使用する必要があります。これを行う方法はありますか?私はこれについて間違っていますか?

4

2 に答える 2

3

それが -ArgumentList の目的です。

このパラメーターを使用して、引数をリモート セッションに渡すことができます。次に例を示します。

$procName = "powershell"
Invoke-Command -ComputerName (get-content c:\scripts\servers.txt) `
   -ScriptBlock {param ($Name) Get-Process -Name $Name} `
   –ArgumentList $procName
于 2012-06-20T18:16:47.143 に答える
2
$rs = New-PSSession -ComputerName SVR01
$Roles = Invoke-Command -Session $rs -ScriptBlock {
      Get-WindowsFeature | Where { $_.Installed }
}
Remove-PSSession $rs
于 2012-06-21T07:43:06.133 に答える