![SCCM 2007 Powershell“更新收藏成员资格”](https://linux22.com/image/607864/SCCM%202007%20Powershell%E2%80%9C%E6%9B%B4%E6%96%B0%E6%94%B6%E8%97%8F%E6%88%90%E5%91%98%E8%B5%84%E6%A0%BC%E2%80%9D.png)
是否有可设置为对特定集合和子集合运行“更新集合成员资格”的 Powershell 命令/脚本?如果没有 Powershell,除了右键单击集合并手动运行更新集合之外,还有其他方法吗?
答案1
我经常使用 WMI 来做这件事。简单的函数可以做到这一点:
$YourSCCMServer = '?'
$YourSite = '?'
$WMIStatic = @{
ComputerName = "$YourSCCMServer"
NameSpace = "root\sms\site_$YourSite"
}
function Update-Collection {
param ($Filter)
Get-WmiObject @WMIStatic -Class SMS_Collection @PSBoundParameters |
Invoke-WmiMethod -Name RequestRefresh
}
Update-Collection -Filter "CollectionID = 'SMS00001'"
您只需填写空白即可。然后编写一个包含您想要的集合的过滤器。
编辑:命名空间中的拼写错误,不确定第一个反斜杠来自哪里。顺便说一句:对于列表,最好包含通配符:-List Collection
不会返回任何结果,-List *Collection*
会。