New-CMTSStepConditionFile
Erstellen Sie eine Dateieigenschaftenbedingung für einen Tasksequenzschritt.
Syntax
New-CMTSStepConditionFile
[-FileDateTimeOperator <VariableOperatorType>]
-FilePath <String>
[-FileTimestamp <DateTime>]
[-FileVersion <String>]
[-VersionOperator <VariableOperatorType>]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Verwenden Sie dieses Cmdlet, um ein Bedingungsobjekt für Dateieigenschaften für einen Tasksequenzschritt zu erstellen. Verwenden Sie dann eines der Cmdlets New-CMTSStep* oder Set-CMTSStep* mit den Parametern Condition oder AddCondition . Beispiel: Set-CMTSStepApplyDataImage.
Weitere Informationen finden Sie unter Verwenden des Tasksequenz-Editors: Bedingungen.
Es gibt drei Arten von Überprüfungen, die Sie mit dieser Bedingung durchführen können:
- Um zu überprüfen, ob die Datei vorhanden ist, verwenden Sie den erforderlichen FilePath-Parameter .
- Um auch die Dateiversion zu überprüfen, verwenden Sie die Parameter FileVersion und VersionOperator .
- Um auch den Dateizeitstempel zu überprüfen, verwenden Sie die Parameter FileTimestamp und FileDateTimeOperator .
Hinweis
Führen Sie Configuration Manager-Cmdlets auf dem Configuration Manager-Standortlaufwerk aus, z. B PS XYZ:\>
. . Weitere Informationen finden Sie unter Erste Schritte.
Beispiele
Beispiel 1
In diesem Beispiel wird überprüft, ob eine der Hilfedateien des Configuration Manager-PowerShell-Moduls vorhanden und zeitstempel ist. Es wird ein Dateibedingungsobjekt für die Datei erstellt, dessen Zeitstempel größer als der 2. August 2021 ist.
Anschließend wird das Cmdlet Set-CMTSStepRunPowerShellScript verwendet, um dieses Bedingungsobjekt dem Schritt PowerShell-Skript ausführen der Tasksequenz Standardbetriebssystembereitstellung hinzuzufügen.
$file = "C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\en-US\AdminUI.PS.dll-Help.xml"
$datetime = Get-Date ("August 2, 2021")
$condition = New-CMTSStepConditionFile -FilePath $file -FileTimestamp $datetime -FileDateTimeOperator Greater
$tsNameOsd = "Default OS deployment"
$tsStepNameRunPwsh = "Run PowerShell Script"
Set-CMTSStepRunPowerShellScript -TaskSequenceName $tsNameOsd -StepName $tsStepNameRunPwsh -AddCondition $condition
Dieses Beispielskript erstellt die folgende Bedingung für den Schritt:
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"
Parameter
-Confirm
Fordert Sie vor dem Ausführen des Cmdlets zur Bestätigung auf.
Typ: | SwitchParameter |
Aliase: | cf |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-DisableWildcardHandling
Dieser Parameter behandelt Wildcardzeichen als Literalzeichenwerte. Sie können es nicht mit ForceWildcardHandling kombinieren.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-FileDateTimeOperator
Wenn Sie den FileTimestamp-Parameter verwenden, verwenden Sie diesen Parameter, um den Operator für die Tasksequenz anzugeben, um den Zeitstempel der Datei auszuwerten.
Typ: | VariableOperatorType |
Zulässige Werte: | Equals, NotEquals, Greater, GreaterEqual, Less, LessEqual |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-FilePath
Geben Sie den vollständigen Pfad einschließlich des Namens der Datei für diese Bedingung an.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-FileTimestamp
Verwenden Sie zum Auswerten des Zeitstempels der Datei diesen Parameter, um ein datetime-Objekt anzugeben. Verwenden Sie zum Abrufen dieses Objekts das integrierte Cmdlet Get-Date .
Verwenden Sie dann den Parameter FileDateTimeOperator , um den Auswertungsoperator festzulegen.
Typ: | DateTime |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-FileVersion
Verwenden Sie zum Auswerten der Dateiversion diesen Parameter, um die Versionszeichenfolge anzugeben.
Verwenden Sie dann den Parameter VersionOperator , um den Auswertungsoperator festzulegen.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ForceWildcardHandling
Dieser Parameter verarbeitet Wildcardzeichen und kann zu unerwartetem Verhalten führen (nicht empfohlen). Sie können es nicht mit DisableWildcardHandling kombinieren.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-VersionOperator
Wenn Sie den FileVersion-Parameter verwenden, verwenden Sie diesen Parameter, um den Operator für die Tasksequenz anzugeben, um die Version der Datei auszuwerten.
Typ: | VariableOperatorType |
Zulässige Werte: | Equals, NotEquals, Greater, GreaterEqual, Less, LessEqual |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-WhatIf
Zeigt, was passieren würde, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Typ: | SwitchParameter |
Aliase: | wi |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
None
Ausgaben
IResultObject
Hinweise
Weitere Informationen zu diesem Rückgabeobjekt und seinen Eigenschaften finden Sie unter SMS_TaskSequence_FileConditionExpression WMI-Serverklasse.