0

背后故事:

我正在编写一个指向 Microsoft SCCM 集合的脚本。该脚本旨在查询集合中的所有成员并执行某些操作。到目前为止,我可以在所有集合成员上重新启动特定服务,例如 SCCM 服务。我正在处理的下一点是从集合中的每个成员卸载补丁。

这样的事情可以重新启动每个集合成员上的服务:

foreach ($member in get-cmdevice -collectionname "A collection name"){Get-Service -ComputerName $member.name -Name CcmExec | Restart-Service}

剧本:

foreach ($member in get-cmdevice -collectionname "Some collection name") 
{   
    $ession = new-PSSession -ComputerName $member
    Invoke-Command -Session $ession {wusa.exe /uninstall /kb:######/quiet /log /norestart} 
}

产生的错误:

new-PSSession:一个或多个计算机名无效

尝试通过仅添加调用命令来模拟第一个脚本会导致脚本尝试从本地计算机卸载更新。

想法?

4

1 回答 1

0

知道了。不得不添加

.name

在会话中 $member 之后。我试图把整个对象/数组拉进去。

于 2013-07-24T19:29:52.143 回答