New-CMRequirementRuleExpression

Créez une règle d’exigence pour évaluer une condition globale personnalisée avec une expression complexe.

Syntaxe

New-CMRequirementRuleExpression
   [-AddAsGroup]
   [-AddExpression <ExpressionBase[]>]
   [-AddRequirementRule <Rule[]>]
   [-ClauseOperator <ConnectOperator>]
   [-GroupOperator <ConnectOperator>]
   [-RootExpression <ExpressionBase>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

Description

Utilisez cette applet de commande pour créer une règle d’exigence sur un type de déploiement d’application qui évalue une condition globale personnalisée avec une expression complexe. Lorsque vous créez une condition globale, le type Condition doit être Expression. Ces expressions vous permettent d’ajouter plusieurs clauses et de les regrouper avec des opérateurs logiques.

Pour créer une condition globale personnalisée avec une expression, utilisez l’applet de commande New-CMGlobalConditionExpression .

Après avoir utilisé l’applet de commande New-CMRequirementRuleExpression , utilisez l’une des applets de commande Add- ou Set- pour les types de déploiement. Transmettez cet objet de règle d’exigence aux paramètres AddRequirement ou RemoveRequirement .

Pour plus d’informations, consultez Configuration requise du type de déploiement et Créer des conditions globales.

Remarque

Exécutez des applets de commande Configuration Manager à partir du lecteur de site Configuration Manager, par exemple PS XYZ:\>. Pour plus d’informations, consultez Prise en main.

Exemples

Exemple 1 : Ajouter une expression de base

$rule1 = Get-CMGlobalCondition -Name "Total physical memory" | New-CMRequirementRuleCommonValue -Value1 2048 -RuleOperator GreaterEquals
$myRuleExpression = New-CMRequirementRuleExpression -AddRequirementRule $rule1
$myGC = New-CMGlobalConditionExpression -Name "GCExp" -DeviceType Windows -RootExpression $myRuleExpression

Exemple 2 : Ajouter une expression de condition globale complexe

$ruleProc = Get-CMGlobalCondition -Name "Number of processors" | New-CMRequirementRuleCommonValue -Value1 2 -RuleOperator GreaterEquals
$ruleMem1 = Get-CMGlobalCondition -Name "Total physical memory" | New-CMRequirementRuleCommonValue -Value1 2048 -RuleOperator GreaterThan
$ruleMem2 = Get-CMGlobalCondition -Name "Total physical memory" | New-CMRequirementRuleCommonValue -Value1 4096 -RuleOperator LessEquals
$ruleCPUSpeed1 = Get-CMGlobalCondition -Name "CPU Speed" | New-CMRequirementRuleCommonValue -Value1 5120 -RuleOperator LessEquals
$ruleCPUSpeed2 = Get-CMGlobalCondition -Name "CPU Speed" | New-CMRequirementRuleCommonValue -Value1 1024 -RuleOperator GreaterThan
$expressionProc = New-CMRequirementRuleExpression -AddRequirementRule $ruleProc
$expressionMem = New-CMRequirementRuleExpression -AddRequirementRule $ruleMem1, $ruleMem2 -ClauseOperator And
$expressionCPU = New-CMRequirementRuleExpression -AddRequirementRule $ruleCPUSpeed1, $ruleCPUSpeed2 -ClauseOperator And
$myRuleExpression = New-CMRequirementRuleExpression -RootExpression $expressionProc -AddExpression $expressionMem,$expressionCPU -ClauseOperator And -AddAsGroup -GroupOperator Or
$myGC = New-CMGlobalConditionExpression -Name "GCExp" -DeviceType Windows -RootExpression $myRuleExpression

Paramètres

-AddAsGroup

Ajoutez ce paramètre pour ajouter les expressions en tant que groupe. Spécifiez plusieurs expressions avec le paramètre AddExpression . Utilisez le paramètre GroupOperator pour spécifier le connecteur.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AddExpression

Spécifiez un ou plusieurs objets expression à ajouter à une nouvelle expression. Créez ces objets avec cette même applet de commande. Utilisez le paramètre RootExpression pour spécifier la première expression.

Type:ExpressionBase[]
Alias:AddExpressions
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AddRequirementRule

-ClauseOperator

Spécifiez l’opérateur logique à utiliser comme connecteur entre plusieurs expressions.

Type:ConnectOperator
Valeurs acceptées:And, Or
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DisableWildcardHandling

Ce paramètre traite les caractères génériques comme des valeurs de caractère littéral. Vous ne pouvez pas la combiner avec ForceWildcardHandling.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ForceWildcardHandling

Ce paramètre traite les caractères génériques et peut entraîner un comportement inattendu (non recommandé). Vous ne pouvez pas la combiner avec DisableWildcardHandling.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-GroupOperator

Spécifiez l’opérateur logique à utiliser comme connecteur entre les groupes. Utilisez ce paramètre avec le paramètre AddAsGroup .

Type:ConnectOperator
Valeurs acceptées:And, Or
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-RootExpression

Spécifiez la première expression avec ce paramètre. Créez un objet expression avec cette même applet de commande. Pour ajouter plusieurs expressions, utilisez également le paramètre AddExpression .

Type:ExpressionBase
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

None

Sorties

System.Object