Dela via


New-CMRequirementRuleExpression

SYNOPSIS

Skapa en kravregel för att utvärdera ett anpassat globalt villkor med ett komplext uttryck.

SYNTAX

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

DESCRIPTION

Använd den här cmdleten för att skapa en kravregel för en programdistributionstyp som utvärderar ett anpassat globalt villkor med ett komplext uttryck. När du skapar ett globalt villkor måste Villkorstyp vara Expression. Med dessa uttryck kan du lägga till flera satser och gruppera dem med logiska operatorer.

Om du vill skapa ett anpassat globalt villkor med ett uttryck använder du cmdleten New-CMGlobalConditionExpression.

När du har använder cmdleten New-CMRequirementRuleExpression använder du en av cmdletarna Add- eller Set för distributionstyper. Skicka det här kravregelobjektet till parametrarna AddRequirement eller RemoveRequirement.

Mer information finns i Krav för distributionstyp och Skapa globala villkor.

Anteckning

Kör Konfigurationshanteraren cmdlets från Konfigurationshanteraren platsenhet, till exempel PS XYZ:\> . Mer information finns i Komma igång.

EXAMPLES

Exempel 1: Lägga till ett grundläggande uttryck

$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

Exempel 2: Lägg till ett komplext globalt villkorsuttryck

$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

PARAMETERS

-AddAsGroup

Lägg till den här parametern för att lägga till uttrycken som en grupp. Ange fler än ett uttryck med parametern AddExpression. Använd parametern GroupOperator för att ange anslutningsappen.

Type: SwitchParameter
Parameter Sets: (All)
Aliases:

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

-AddExpression

Ange ett eller flera uttrycksobjekt som ska läggas till i ett nytt uttryck. Skapa dessa objekt med samma cmdlet. Använd rootExpression-parametern för att ange det första uttrycket.

Type: ExpressionBase[]
Parameter Sets: (All)
Aliases: AddExpressions

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

-AddRequirementRule

Ange en matris med kravobjekt för uttrycket. Om du vill skapa ett kravregelobjekt använder du någon av följande cmdlets:

Type: Rule[]
Parameter Sets: (All)
Aliases: AddRequirementRules

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

-ClauseOperator

Ange den logiska operatorn som ska användas som anslutningsapp mellan flera uttryck.

Type: ConnectOperator
Parameter Sets: (All)
Aliases:
Accepted values: And, Or

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

-DisableWildcardHandling

Den här parametern behandlar jokertecken som värden för literaltecken. Du kan inte kombinera den med ForceWildcardHandling.

Type: SwitchParameter
Parameter Sets: (All)
Aliases:

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

-ForceWildcardHandling

Den här parametern bearbetar jokertecken och kan leda till oväntat beteende (rekommenderas inte). Du kan inte kombinera den med DisableWildcardHandling.

Type: SwitchParameter
Parameter Sets: (All)
Aliases:

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

-GroupOperator

Ange den logiska operatorn som ska användas som anslutning mellan grupper. Använd den här parametern med parametern AddAsGroup.

Type: ConnectOperator
Parameter Sets: (All)
Aliases:
Accepted values: And, Or

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

-RootExpression

Ange det första uttrycket med den här parametern. Skapa ett uttrycksobjekt med samma cmdlet. Om du vill lägga till fler än ett uttryck använder du även parametern AddExpression.

Type: ExpressionBase
Parameter Sets: (All)
Aliases:

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

CommonParameters

Denna cmdlet har stöd för parametrarna -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction och -WarningVariable. Mer information finns i about_CommonParameters.

INPUTS

Ingen

OUTPUTS

System.Object

ANTECKNINGAR

New-CMRequirementRuleActiveDirectorySiteValue New-CMRequirementRuleBooleanValue New-CMRequirementRuleCMSiteValue New-CMRequirementRuleCommonValue New-CMRequirementRuleDeviceOwnershipValue New-CMRequirementRuleExistential New-CMRequirementRuleFileAttributeValue New-CMRequirementRuleFilePermissionValue New-CMRequirementRuleFreeDiskSpaceValue New-CMRequirementRuleInputTypeValue New-CMRequirementRuleOperatingSystemLanguageValue New-CMRequirementRuleOperatingSystemValue New-CMRequirementRuleOUValue New-CMRequirementRuleRegistryKeyPermissionValue New-CMRequirementRuleScreenResolutionValue Get-CMGlobalCondition New-CMGlobalConditionExpression Krav för distributionstyp Skapa globala villkor