New-CMRequirementRuleExpression
建立需求規則,以使用複雜表達式評估自定義全域條件。
語法
New-CMRequirementRuleExpression
[-AddAsGroup]
[-AddExpression <ExpressionBase[]>]
[-AddRequirementRule <Rule[]>]
[-ClauseOperator <ConnectOperator>]
[-GroupOperator <ConnectOperator>]
[-RootExpression <ExpressionBase>]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
Description
使用此 Cmdlet 在評估具有複雜表達式之自定義全域條件的應用程式部署類型上建立需求規則。 當您建立全域條件時, 條件類型 必須是 Expression。 這些表達式可讓您新增多個子句,並使用邏輯運算符將它們分組。
若要使用表達式建立自定義全域條件,請使用 New-CMGlobalConditionExpression Cmdlet。
使用 New-CMRequirementRuleExpression Cmdlet 之後,請針對部署類型使用其中一個 Add- 或 Set- Cmdlet。 將此需求規則對象傳遞至 AddRequirement 或 RemoveRequirement 參數。
注意事項
從 Configuration Manager 月臺磁碟驅動器執行 Configuration Manager Cmdlet,例如 PS XYZ:\>
。 如需詳細資訊,請 參閱開始使用。
範例
範例 1:新增基本表達式
$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
範例 2:新增複雜的全域條件表達式
$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
參數
-AddAsGroup
新增此參數以將表達式新增為群組。 使用 AddExpression 參數指定多個運算式。 使用 GroupOperator 參數來指定連接器。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-AddExpression
指定要加入至新表達式的一或多個表達式物件。 使用這個相同的 Cmdlet 建立這些物件。 使用 RootExpression 參數來指定第一個表達式。
類型: | ExpressionBase[] |
別名: | AddExpressions |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-AddRequirementRule
指定表達式的需求物件陣列。 若要建立需求規則物件,請使用下列其中一個 Cmdlet:
- New-CMRequirementRuleActiveDirectorySiteValue
- New-CMRequirementRuleBooleanValue
- New-CMRequirementRuleCMSiteValue
- New-CMRequirementRuleCommonValue
- New-CMRequirementRuleDeviceOwnershipValue
- New-CMRequirementRuleExistential
- New-CMRequirementRuleExpression
- New-CMRequirementRuleFileAttributeValue
- New-CMRequirementRuleFilePermissionValue
- New-CMRequirementRuleFreeDiskSpaceValue
- New-CMRequirementRuleInputTypeValue
- New-CMRequirementRuleOperatingSystemLanguageValue
- New-CMRequirementRuleOperatingSystemValue
- New-CMRequirementRuleOUValue
- New-CMRequirementRuleRegistryKeyPermissionValue
- New-CMRequirementRuleScreenResolutionValue
類型: | Rule[] |
別名: | AddRequirementRules |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ClauseOperator
指定要做為多個運算式之間連接器的邏輯運算元。
類型: | ConnectOperator |
接受的值: | And, Or |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DisableWildcardHandling
此參數會將通配符視為常值字元值。 您無法將其與 ForceWildcardHandling 結合。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ForceWildcardHandling
此參數會處理通配符,並可能導致非預期的行為 (不建議) 。 您無法將其與 DisableWildcardHandling 結合。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-GroupOperator
指定要做為群組間連接器的邏輯運算元。 使用此參數搭配 AddAsGroup 參數。
類型: | ConnectOperator |
接受的值: | And, Or |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RootExpression
使用這個參數指定第一個表達式。 使用這個相同的 Cmdlet 建立表達式物件。 若要新增多個表達式,也請使用 AddExpression 參數。
類型: | ExpressionBase |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
None
輸出
System.Object
相關連結
- 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
- 部署類型需求
- 建立全域條件