powershell foreach name执行invoke-command

问题描述 投票:0回答:1

我有以下代码输出名称:

foreach ($comp in $maschines.name) { $comp }

但以下不起作用,为什么?

foreach ($comp in $maschines.name) { invoke-command -computer comp1 -ScriptBlock { get-vm –VMName $comp | Select-Object VMId | Get-VHD | ft path } }
powershell foreach invoke-command
1个回答
0
投票

尝试以下方法:

 foreach ($comp in $maschines.name) { invoke-command -computer comp1 -ScriptBlock { get-vm –VMName $using:comp | Select-Object VMId | Get-VHD | ft path } }

using:添加到您的scriptblock中,以利用您要在另一台计算机上使用的本地变量。

© www.soinside.com 2019 - 2024. All rights reserved.