New-CMTSStepConditionIfStatement

タスク シーケンス ステップの if ステートメント条件を作成します。

構文

New-CMTSStepConditionIfStatement
   [-Condition <IResultObject[]>]
   -StatementType <ConditionStatementType>
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

説明

このコマンドレットを使用して、タスク シーケンス ステップの if ステートメント 条件オブジェクトを作成します。 次に、Condition パラメーターまたはAddConditionパラメーターを使用して** * 、New-CMTSStep _ または ** Set-CMTSStep * _** コマンドレットのいずれかを使用します。 たとえば 、Set-CMTSStepApplyDataImageです。

詳細については、「Use the task sequence editor: Conditions 」を参照してください

注意

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

例 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 .

Type:IResultObject[]
Aliases:SubCondition, SubConditions
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Confirm

コマンドレットを実行する前に確認メッセージを表示します。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-DisableWildcardHandling

このパラメーターは、ワイルドカード文字をリテラル文字値として扱います。 ForceWildcardHandling と組み合わせは使用できない

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

このパラメーターはワイルドカード文字を処理し、予期しない動作を引き起こします (推奨されません)。 DisableWildcardHandling と組み合わせは使用できない

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

作成する if ステートメント の種類を 指定します。 この条件で実行できるチェックには、次の 3 種類があります。

  • 条件 All が true の場合
  • 条件 Any が true の場合
  • 条件 None が true の場合
Type:ConditionStatementType
Aliases:Operator
Accepted values:All, Any, None
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-WhatIf

コマンドレットが実行されるとどうなるかを示します。 コマンドレットは実行されません。

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

入力

なし

出力

IResultObject

メモ

この戻り値オブジェクトとそのプロパティの詳細については、「SMS_TaskSequence_ConditionOperator WMI クラス」を参照してください