Condividi tramite


New-CMRequirementRuleExpression

Creare una regola di requisito per valutare una condizione globale personalizzata con un'espressione complessa.

Sintassi

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

Descrizione

Usare questo cmdlet per creare una regola di requisito in un tipo di distribuzione dell'applicazione che valuta una condizione globale personalizzata con un'espressione complessa. Quando si crea una condizione globale, il tipo Condition deve essere Expression. Queste espressioni consentono di aggiungere più clausole e raggrupparle con operatori logici.

Per creare una condizione globale personalizzata con un'espressione, usare il cmdlet New-CMGlobalConditionExpression .

Dopo aver usato il cmdlet New-CMRequirementRuleExpression , usare uno dei cmdlet Add- o Set- per i tipi di distribuzione. Passare questo oggetto regola di requisito ai parametri AddRequirement o RemoveRequirement .

Per altre informazioni, vedere Requisiti del tipo di distribuzione e Creare condizioni globali.

Nota

Eseguire i cmdlet di Configuration Manager dall'unità del sito di Configuration Manager, ad esempio PS XYZ:\>. Per altre informazioni, vedere Introduzione.

Esempio

Esempio 1: Aggiungere un'espressione di 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

Esempio 2: Aggiungere un'espressione di condizione globale complessa

$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

Parametri

-AddAsGroup

Aggiungere questo parametro per aggiungere le espressioni come gruppo. Specificare più di un'espressione con il parametro AddExpression . Usare il parametro GroupOperator per specificare il connettore.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-AddExpression

Specificare uno o più oggetti espressione da aggiungere a una nuova espressione. Creare questi oggetti con lo stesso cmdlet. Utilizzare il parametro RootExpression per specificare la prima espressione.

Tipo:ExpressionBase[]
Alias:AddExpressions
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-AddRequirementRule

-ClauseOperator

Specificare l'operatore logico da usare come connettore tra più espressioni.

Tipo:ConnectOperator
Valori accettati:And, Or
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DisableWildcardHandling

Questo parametro considera i caratteri jolly come valori letterali. Non è possibile combinarlo con ForceWildcardHandling.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ForceWildcardHandling

Questo parametro elabora caratteri jolly e può causare un comportamento imprevisto (non consigliato). Non è possibile combinarlo con DisableWildcardHandling.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-GroupOperator

Specificare l'operatore logico da usare come connettore tra gruppi. Usare questo parametro con il parametro AddAsGroup .

Tipo:ConnectOperator
Valori accettati:And, Or
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-RootExpression

Specificare la prima espressione con questo parametro. Creare un oggetto espressione con lo stesso cmdlet. Per aggiungere più di un'espressione, usare anche il parametro AddExpression .

Tipo:ExpressionBase
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

None

Output

System.Object