0

目前为 SCCM 编写脚本以实现自动化

  • 收藏品的创作

  • 填充集合

  • ETC..

我想添加一个“验证”步骤。

我想确保(通过命令行,因为我想自动化它)部署类型至少具有一个全局条件。

我搜索过

我能找到一个可以解决问题的命令行开关吗?

  • 一种使用 WMI 的方法:Get-WmiObject -list -Namespace root\sms\site_[sitecode]

我能找到一个能给我信息的课程吗?

  • 一个 WQL

我找到了两个信息:

  • 是否使用全局条件:有趣但在我的情况下不太有用

  • 可以使用找到全局条件名称Get-CMDeploymentType -applicationname [AppName]).SDMPackageXML

我的全局条件的前缀并不完全相同。因此,以下可能在某些情况下有效但不可信:PS P41:\> (Get-CMDeploymentType -applicationname PKG_10).SDMPackageXML -match "GC_"

那是我需要一点帮助的地方。我错过了什么?哪个 WQL 查询会给我所需的信息/确认?

4

1 回答 1

0

找到了解决方案!我一直在 TechNet 中挖掘,发现了两件事:

  • 如何反序列化
  • 我的措辞很糟糕:在谈到部署类型时,我们确实不再谈论全局条件,而是谈论需求

最后,我通过以下方式解决了我的需求: ([Microsoft.ConfigurationManagement.ApplicationManagement.Serialization.SccmSerializer]::DeserializeFromString((Get-CMApplication -name AppName).SDMPackageXML)).DeploymentTypes.Requirements.Count

当然,如果部署类型不止一种, ([Microsoft.ConfigurationManagement.ApplicationManagement.Serialization.SccmSerializer]::DeserializeFromString((Get-CMApplication -name winzip_FR_1.5.0_R1.000).SDMPackageXML)).DeploymentTypes[n].Requirements.Count

非常感谢,

于 2014-01-07T08:00:02.017 回答