次の方法で共有


New-CMRequirementRuleOperatingSystemValue

アプリケーションの展開の種類の OS 要件ルールを作成します。

構文

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

説明

このコマンドレットを使用して、アプリケーションの展開の種類の OS 要件規則を作成します。

このコマンドレットを使用した後、展開の種類に 対して Add またはSet- のいずれかのコマンドレットを使用します。 この要件ルール オブジェクトを AddRequirement パラメーターまたは RemoveRequirement パラメーターに渡します。

詳細については、「 展開の種類の要件 」および「 グローバル条件の作成」を参照してください。

注:

PS XYZ:\>など、Configuration Manager サイト ドライブから Configuration Manager コマンドレットを実行します。 詳細については、「作業の 開始」を参照してください。

例 1: プラットフォーム別に OS の要件規則を追加する

この例では、最初に Get-CMGlobalCondition コマンドレットを使用して、モバイル以外の Windows デバイスの既定の オペレーティング システム のグローバル条件を取得します。 次に 、Get-CMConfigurationPlatform コマンドレットを使用して、Windows Server 2016 と Windows Server 2019 の 2 つのプラットフォームの変数を定義します。 次に、これら 2 つのプラットフォームを含める要件ルール オブジェクトを作成します。 最後に、その規則オブジェクトを 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 と組み合わせることはできません。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ForceWildcardHandling

このパラメーターはワイルドカード文字を処理し、予期しない動作が発生する可能性があります (推奨されません)。 DisableWildcardHandling と組み合わせることはできません。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-InputObject

この要件ルールの基礎として使用するグローバル条件オブジェクトを指定します。 このオブジェクトを取得するには、 Get-CMGlobalCondition コマンドレットを 使用します。

ほとんどの場合、モバイル以外の Windows デバイスでは既定の オペレーティング システム のグローバル条件を使用します。 例: Get-CMGlobalCondition -Name "Operating System" | Where-Object PlatformType -eq 1

注:

既定では、Configuration Manager には オペレーティング システムという名前の 2 つのグローバル条件があります。 PlatformType プロパティを使用して、デバイスの種類で区別できます。

PlatformType デバイスのタイプ
1 Windows
2 Mobile
型:IResultObject
Aliases:GlobalCondition
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Platform

1 つ以上の OS プラットフォーム オブジェクトの配列を指定します。 このオブジェクトを取得するには、 Get-CMConfigurationPlatform コマンドレットを 使用します。

型:IResultObject[]
Aliases:Platforms
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-PlatformString

Platform パラメーターで Get-CMConfigurationPlatform コマンドレットを使用する代わりに、このパラメーターを使用して、1 つ以上の既知の ModelName 文字列の配列を指定できます。 たとえば、プラットフォームのすべての Windows 11 以降 (64 ビット)ModelNameWindows/All_x64_Windows_11_and_higher_Clients

プラットフォームのモデル名を検出するには、次のようなコマンドを使用します。

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

型:String[]
Aliases:PlatformStrings, PlatformCIUniqueID, PlatformCIUniqueIDs
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-RuleOperator

オペレーターを指定して、デバイスの設定と予期される値を比較します。

型:RuleExpressionOperator
指定可能な値:OneOf, NoneOf
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-SelectFullPlatform

指定した型のすべてのプラットフォームを選択するには、このパラメーターを使用します。

型:FullPlatformOption
指定可能な値:Windows, Nokia, WindowsMobile, IOs, IOsDeepLink, Android, AndroidDeepLink, Mac, WinPhone8, WinPhone8DeepLink, MobileMsi
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

出力

System.Object