New-CMTSStepConditionIfStatement
タスク シーケンス ステップの if ステートメント 条件を作成します。
構文
New-CMTSStepConditionIfStatement
[-Condition <IResultObject[]>]
-StatementType <ConditionStatementType>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
このコマンドレットを使用して、タスク シーケンス ステップの if ステートメント 条件オブジェクトを作成します。 次に、Condition パラメーターまたは AddCondition パラメーターを使用して、New-CMTSStep* コマンドレットまたは Set-CMTSStep* コマンドレットのいずれかを使用します。 たとえば、 Set-CMTSStepApplyDataImage です。
詳細については、「 タスク シーケンス エディターの使用: 条件」を参照してください。
注:
PS XYZ:\>
など、Configuration Manager サイト ドライブから Configuration Manager コマンドレットを実行します。 詳細については、「作業の 開始」を参照してください。
例
例 1
この例では、最初に New-CMTSStepConditionFile コマンドレットと New-CMTSStepConditionQueryWMI コマンドレットを使用して、子条件オブジェクトを作成します。 この 2 つのオブジェクトを New-CMTSStepConditionIfStatement コマンドレットに渡し、その条件オブジェクトを保存します。
次に、Set-CMTSStepSetDynamicVariable コマンドレットを使用して、この条件オブジェクトを既定の OS 展開タスク シーケンスの動的変数の設定ステップに追加します。
$file = "C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\en-US\AdminUI.PS.dll-Help.xml"
$datetime = Get-Date ("August 2, 2021")
$conditionFile = New-CMTSStepConditionFile -FilePath $file -FileTimestamp $datetime -FileDateTimeOperator Greater
$model = "Latitude E7470"
$wmiQuery = "Select * From Win32_ComputerSystem Where Model = `"$Model`""
$conditionQuery = New-CMTSStepConditionQueryWMI -Namespace "root\cimv2" -Query $wmiQuery
$condition = New-CMTSStepConditionIfStatement -StatementType All -Condition $conditionFile,$conditionQuery
$tsNameOsd = "Default OS deployment"
$tsStepNameSetDynVar = "Set Dynamic Variables"
Set-CMTSStepSetDynamicVariable -TaskSequenceName $tsNameOsd -StepName $tsStepNameSetDynVar -AddCondition $condition
If All the conditions are true:
File C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\en-US\AdminUI.PS.dll-Help.xml exists and timestamp greater than "8/1/2021 16:00:00"
WMI Query Select * From Win32_ComputerSystem Where Model = "Latitude E7470"
パラメーター
-Condition
この if ステートメント ブロックに含める条件オブジェクトを 1 つ以上指定します。 これらの入れ子になったオブジェクトを取得するには、 New-CMTSStepCondition* コマンドレットのいずれかを使用します。 たとえば、 New-CMTSStepConditionFile です。
型: | IResultObject[] |
Aliases: | SubCondition, SubConditions |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Confirm
コマンドレットを実行する前に確認メッセージを表示します。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-DisableWildcardHandling
このパラメーターは、ワイルドカード文字をリテラル文字の値として扱います。 ForceWildcardHandling と組み合わせることはできません。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ForceWildcardHandling
このパラメーターはワイルドカード文字を処理し、予期しない動作が発生する可能性があります (推奨されません)。 DisableWildcardHandling と組み合わせることはできません。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-StatementType
作成する if ステートメント の型を指定します。 この条件で実行できるチェックには、次の 3 種類があります。
- 条件の
All
が true の場合 - 条件の
Any
が true の場合 - 条件の
None
が true の場合
型: | ConditionStatementType |
Aliases: | Operator |
指定可能な値: | All, Any, None |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットが実行されるとどうなるかを示します。 コマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
None
出力
IResultObject
メモ
この戻りオブジェクトとそのプロパティの詳細については、「 サーバー WMI クラスSMS_TaskSequence_ConditionOperator」を参照してください。