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

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-CollectionName

指定要添加规则的设备集合的名称。

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False

-DisableWildcardHandling

此参数将通配符视为文字字符值。 不能将其与 ForceWildcardHandling 结合使用

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-ForceWildcardHandling

此参数处理通配符,并且可能会导致意外行为 (不建议) 。 不能将其与 DisableWildcardHandling 结合使用

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

指定设备集合的对象以添加规则。 若要获取此对象,请使用 Get-CMCollectionGet-CMDeviceCollection cmdlet。

Type:IResultObject
Aliases:Collection
Position:Named
Default value:None
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

添加此参数可返回一个对象,该对象表示您正使用的项目。 默认情况下,此 cmdlet 可能不会生成任何输出。

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-QueryExpression

指定 WQL (WQL) 用于更新设备集合的 WMI 查询语言表达式。

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-RuleName

指定要添加到集合中的查询规则的名称。

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-ValidateQueryHasResult

添加此参数以在添加规则之前测试查询表达式。 当 cmdlet 通过此参数运行时,如果查询表达式没有结果,该 cmdlet 将返回以下错误消息:在这种情况下,不会将查询添加到 No object corresponds to the specified parameters. 集合中。

如果你知道查询当前返回零结果,但仍希望添加规则,请不要使用此参数。

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

显示在 cmdlet 运行时发生的情况。 cmdlet 不运行。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False

输入

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

输出

System.Object