Add-CMDeviceCollectionQueryMembershipRule    
将查询成员身份规则添加到设备集合。
语法
Add-CMDeviceCollectionQueryMembershipRule
   -CollectionId <String>
   [-PassThru]
   -QueryExpression <String>
   -RuleName <String>
   [-ValidateQueryHasResult]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]    Add-CMDeviceCollectionQueryMembershipRule
   -CollectionName <String>
   [-PassThru]
   -QueryExpression <String>
   -RuleName <String>
   [-ValidateQueryHasResult]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]    Add-CMDeviceCollectionQueryMembershipRule
   -InputObject <IResultObject>
   [-PassThru]
   -QueryExpression <String>
   -RuleName <String>
   [-ValidateQueryHasResult]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]    说明
使用此 cmdlet 将查询成员身份规则添加到设备集合。
              查询规则允许基于按计划运行的查询动态更新集合的成员身份。
无法将成员身份规则添加到默认集合。 目标的任何集合都应具有以网站代码开头的 ID,而不是 SMS。
有关详细信息,请参阅 如何在 Configuration Manager 中创建集合。
注意
从 Configuration Manager 站点驱动器运行 Configuration Manager cmdlet,例如 PS XYZ:\>。 有关详细信息,请参阅 入门。
示例
示例 1:添加查询成员身份规则
此示例首先将 WMI 查询语言 (WQL) 语句存储在 wql 变量中。 下一个命令将名为 TPM 的成员资格规则添加到名为 Windows 10 设备的设备集合。 QueryExpression 参数使用 wql 变量,并指定定义成员身份规则的查询。
$wql = "select SMS_R_System.ResourceId, SMS_R_System.ResourceType, SMS_R_System.Name, SMS_R_System.SMSUniqueIdentifier, SMS_R_System.ResourceDomainORWorkgroup, SMS_R_System.Client from  SMS_R_System inner join SMS_G_System_TPM on SMS_G_System_TPM.ResourceID = SMS_R_System.ResourceId"
Add-CMDeviceCollectionQueryMembershipRule -CollectionName "Windows 10 devices" -QueryExpression $wql -RuleName "TPM"参数
-CollectionId
指定要添加规则的设备集合的 ID。 此值是 CollectionID 属性,例如 XYZ00012。 由于无法向默认集合添加成员身份规则,因此此 ID 以网站代码开头,而不是 SMS。
| 类型: | String | 
| Position: | Named | 
| 默认值: | None | 
| 必需: | True | 
| 接受管道输入: | False | 
| 接受通配符: | False | 
-CollectionName
指定要添加规则的设备集合的名称。
| 类型: | String | 
| Position: | Named | 
| 默认值: | None | 
| 必需: | True | 
| 接受管道输入: | False | 
| 接受通配符: | False | 
-Confirm
提示你在运行 cmdlet 之前进行确认。
| 类型: | SwitchParameter | 
| 别名: | cf | 
| Position: | Named | 
| 默认值: | False | 
| 必需: | False | 
| 接受管道输入: | False | 
| 接受通配符: | False | 
-DisableWildcardHandling
此参数将通配符视为文本字符值。 不能将其与 ForceWildcardHandling 组合使用。
| 类型: | SwitchParameter | 
| Position: | Named | 
| 默认值: | None | 
| 必需: | False | 
| 接受管道输入: | False | 
| 接受通配符: | False | 
-ForceWildcardHandling
此参数处理通配符,并可能导致意外行为, (不建议) 。 不能将其与 DisableWildcardHandling 组合使用。
| 类型: | SwitchParameter | 
| Position: | Named | 
| 默认值: | None | 
| 必需: | False | 
| 接受管道输入: | False | 
| 接受通配符: | False | 
-InputObject
为设备集合指定对象以添加规则。 若要获取此对象,请使用 Get-CMCollection 或 Get-CMDeviceCollection cmdlet。
| 类型: | IResultObject | 
| 别名: | Collection | 
| Position: | Named | 
| 默认值: | None | 
| 必需: | True | 
| 接受管道输入: | True | 
| 接受通配符: | False | 
-PassThru
添加此参数可返回一个对象,该对象表示正在使用的项。 默认情况下,此 cmdlet 可能不会生成任何输出。
| 类型: | SwitchParameter | 
| Position: | Named | 
| 默认值: | None | 
| 必需: | False | 
| 接受管道输入: | False | 
| 接受通配符: | False | 
-QueryExpression
指定站点用于更新设备集合的 WMI 查询语言 (WQL) 表达式。
| 类型: | String | 
| Position: | Named | 
| 默认值: | None | 
| 必需: | True | 
| 接受管道输入: | False | 
| 接受通配符: | False | 
-RuleName
指定要添加到集合的查询规则的名称。
| 类型: | String | 
| Position: | Named | 
| 默认值: | None | 
| 必需: | True | 
| 接受管道输入: | False | 
| 接受通配符: | False | 
-ValidateQueryHasResult
添加此参数以在添加规则之前测试查询表达式。 使用此参数运行 cmdlet 时,如果查询表达式没有结果,cmdlet 将返回以下错误消息: No object corresponds to the specified parameters. 在这种情况下,查询不会添加到集合中。
如果知道查询当前返回的结果为零,但仍要添加规则,请不要使用此参数。
| 类型: | SwitchParameter | 
| Position: | Named | 
| 默认值: | None | 
| 必需: | False | 
| 接受管道输入: | False | 
| 接受通配符: | False | 
-WhatIf
显示在 cmdlet 运行时发生的情况。 cmdlet 不会运行。
| 类型: | SwitchParameter | 
| 别名: | wi | 
| Position: | Named | 
| 默认值: | False | 
| 必需: | False | 
| 接受管道输入: | False | 
| 接受通配符: | False | 
输入
Microsoft.ConfigurationManagement.ManagementProvider.IResultObject
输出
System.Object