New-CMRequirementRuleOperatingSystemValue

Создайте правило требований к ОС для типа развертывания приложения.

Синтаксис

New-CMRequirementRuleOperatingSystemValue
   [-Platform <IResultObject[]>]
   [-PlatformString <String[]>]
   -RuleOperator <RuleExpressionOperator>
   [-SelectFullPlatform <FullPlatformOption>]
   [-InputObject] <IResultObject>
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

Описание

Используйте этот командлет, чтобы создать правило требований к ОС для типа развертывания приложения.

После использования этого командлета используйте один из командлетов Add- или Set- для типов развертывания. Передайте этот объект правила требования в параметры AddRequirement или RemoveRequirement .

Дополнительные сведения см. в разделах Требования к типу развертывания и Создание глобальных условий.

Примечание.

Выполните командлеты Configuration Manager с диска сайта Configuration Manager, например PS XYZ:\>. Дополнительные сведения см. в статье Начало работы.

Примеры

Пример 1. Добавление правила требований для ОС по платформам

В этом примере сначала используется командлет Get-CMGlobalCondition для получения глобального условия операционной системы по умолчанию для устройств Windows, не являющихся мобильными. Затем он использует командлет Get-CMConfigurationPlatform для определения переменных для двух платформ для Windows Server 2016 и Windows Server 2019. Затем создается объект правила требования для включения этих двух платформ. Наконец, объект правила передается командлету Set-CMScriptDeploymentType , чтобы добавить требование.

$myGC = Get-CMGlobalCondition -Name "Operating System" | Where-Object PlatformType -eq 1

$platformA = Get-CMConfigurationPlatform -Name "All Windows Server 2019 and higher (64-bit)" -Fast

$platformB = Get-CMConfigurationPlatform -Name "All Windows Server 2016 and higher (64-bit)" -Fast

$myRule = $myGC | New-CMRequirementRuleOperatingSystemValue -RuleOperator OneOf -Platform $platformA, $platformB

Set-CMScriptDeploymentType -ApplicationName "Central App" -DeploymentTypeName "Install" -AddRequirement $myRule

Параметры

-DisableWildcardHandling

Этот параметр обрабатывает подстановочные знаки как литеральные символы. Вы не можете объединить его с ForceWildcardHandling.

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

-ForceWildcardHandling

Этот параметр обрабатывает подстановочные знаки и может привести к непредвиденному поведению (не рекомендуется). Его нельзя объединить с DisableWildcardHandling.

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

-InputObject

Укажите глобальный объект условия, который будет использоваться в качестве основы для этого правила требования. Чтобы получить этот объект, используйте командлет Get-CMGlobalCondition .

В большинстве случаев вы будете использовать глобальное условие операционной системы по умолчанию для устройств Windows, не являющихся мобильными. Пример: Get-CMGlobalCondition -Name "Operating System" | Where-Object PlatformType -eq 1.

Примечание.

По умолчанию Configuration Manager имеет два глобальных условия с именем Операционная система. Их можно различать по типу устройства с помощью свойства PlatformType :

PlatformType Тип устройства
1 Windows
2 Мобильная версия
Type:IResultObject
Aliases:GlobalCondition
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Platform

Укажите массив из одного или нескольких объектов платформы ОС. Чтобы получить этот объект, используйте командлет Get-CMConfigurationPlatform .

Type:IResultObject[]
Aliases:Platforms
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PlatformString

Вместо командлета Get-CMConfigurationPlatform с параметром Platform можно использовать этот параметр для указания массива из одной или нескольких известных строк ModelName . Например, modelName для платформы All Windows 11 и выше (64-разрядная версия) имеет значение Windows/All_x64_Windows_11_and_higher_Clients.

Используйте команду, аналогичную приведенной ниже, чтобы найти имя модели для платформы:

Get-CMConfigurationPlatform -Name "*Server 2019*" -Fast | Select-Object LocalizedDisplayName, ModelName

Type:String[]
Aliases:PlatformStrings, PlatformCIUniqueID, PlatformCIUniqueIDs
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RuleOperator

Укажите оператор для сравнения параметра устройства с ожидаемым значением.

Type:RuleExpressionOperator
Accepted values:OneOf, NoneOf
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-SelectFullPlatform

Используйте этот параметр для выбора всех платформ указанного типа.

Type:FullPlatformOption
Accepted values:Windows, Nokia, WindowsMobile, IOs, IOsDeepLink, Android, AndroidDeepLink, Mac, WinPhone8, WinPhone8DeepLink, MobileMsi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

Выходные данные

System.Object