New-CMTSRule
Erstellen Sie eine Regel, die einem Tasksequenzschritt dynamische Variablen festlegen hinzugefügt werden soll.
Syntax
New-CMTSRule
-Variable <Hashtable>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CMTSRule
[-AssetTag <String>]
[-MacAddress <String>]
[-SerialNumber <String>]
[-Uuid <String>]
-Variable <Hashtable>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CMTSRule
[-DefaultGateway <String>]
-Variable <Hashtable>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CMTSRule
[-Make <String>]
[-Model <String>]
-Variable <Hashtable>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-CMTSRule
[-ReferencedVariableName <String>]
[-ReferencedVariableOperator <VariableOperatorType>]
[-ReferencedVariableValue <String>]
-Variable <Hashtable>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Verwenden Sie dieses Cmdlet, um ein Regelobjekt zu erstellen, das Sie einem Tasksequenzschritt dynamische Variablen festlegen hinzufügen. Verwenden Sie zum Hinzufügen von Regeln die Cmdlets New-CMTSStepSetDynamicVariable oder Set-CMTSStepSetDynamicVariable . Wenn die Tasksequenz diesen Schritt ausführt, wertet sie die dynamischen Regeln und Variablen in der richtigen Reihenfolge aus. Wenn sie die Regeln auf dem bestimmten Gerät auswertet, kann sie dann Tasksequenzvariablen basierend auf diesen Regeln festlegen.
Es gibt vier Arten von Regeln:
- Computer: Werte für Hardwareassettag, UUID, Seriennummer oder MAC-Adresse aus.
- Standort: Werte für das Standardnetzwerkgateway aus.
- Make und Model: Werte für die Herstellung und das Modell eines Computers aus.
- Tasksequenzvariable: Fügen Sie eine Tasksequenzvariable, eine Bedingung und einen Wert hinzu, die ausgewertet werden sollen.
Weitere Informationen finden Sie unter Dynamische Regeln und Variablen.
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: Festlegen des Downloadziels in Windows PE
In diesem Beispiel wird die folgende Regel erstellt:
IF _SMSTSInWinPE equals "TRUE" THEN SET OSDDownloadDestinationLocationType = "TSCache"
Anschließend wird diese Regel einer vorhandenen Instanz dieses Schritts in einer Tasksequenz hinzugefügt.
$tsrule = New-CMTSRule -Variable @{'OSDDownloadDestinationLocationType' = 'TSCache'} -ReferencedVariableName "_SMSTSInWinPE" -ReferencedVariableOperator equals -ReferencedVariableValue TRUE
$tsname = "Default IPU"
$tsstep = "Set Dynamic Variables"
Set-CMTSStepSetDynamicVariable -TaskSequenceName $tsname -StepName $tsstep -AddRule $tsrule
Parameter
-AssetTag
Geben Sie ein Asset-Tag für den Regeltyp Computer an. Der Maximalwert beträgt 255 Zeichen.
Wenn Sie diesen Wert beispielsweise auf 123456
festlegen, wird die folgende Regel hinzugefügt: IF Asset tag equals "123456" THEN
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-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 |
-DefaultGateway
Geben Sie das Standardgateway für den Regeltyp Standort an.
Wenn Sie diesen Wert beispielsweise auf 192.168.10.1
festlegen, wird die folgende Regel hinzugefügt: IF Default gateway equals "192.168.10.1" THEN
Typ: | String |
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 |
-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 |
-MacAddress
Geben Sie die MAC-Adresse für den Regeltyp Computer an.
Wenn Sie diesen Wert beispielsweise auf 00:11:22:33:44:55
festlegen, wird die folgende Regel hinzugefügt: IF MAC address equals "00:11:22:33:44:55" THEN
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Make
Geben Sie make für den Regeltyp Make und Model an. Verwenden Sie den Parameter Model , um den anderen Wert festzulegen. Die Regel wertet true aus, wenn beide Werte true sind.
Sie können Ein-/Auslesezeichen verwenden:
-
*
: Mehrere Zeichen -
?
: Einzelnes Zeichen
Wenn Sie z. B. diesen Wert auf Surface
und das Modell auf *
festlegen, wird die folgende Regel hinzugefügt: IF Make equals "Surface" AND Model equals "*" THEN
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Model
Geben Sie das Modell für den Regeltyp Make und Model an. Verwenden Sie den Make-Parameter , um den anderen Wert festzulegen. Die Regel wertet true aus, wenn beide Werte true sind.
Sie können Ein-/Auslesezeichen verwenden:
-
*
: Mehrere Zeichen -
?
: Einzelnes Zeichen
Wenn Sie z. B. diesen Wert auf *
und make auf Surface
festlegen, wird die folgende Regel hinzugefügt: IF Make equals "Surface" AND Model equals "*" THEN
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ReferencedVariableName
Geben Sie die Variable für den Regeltyp Tasksequenzvariable an . Dazu müssen Sie auch die Parameter ReferencedVariableOperator und ReferencedVariableValue festlegen.
Bei diesem Variablennamen kann es sich um eine integrierte Oder eine von Ihnen erstellte benutzerdefinierte Tasksequenzvariable handeln. Weitere Informationen finden Sie unter Verwenden von Tasksequenzvariablen in Configuration Manager.
Wenn Sie beispielsweise die folgenden Werte festlegen:
-
ReferencedVariableName:
OSDRegisteredOrgName
-
ReferencedVariableOperator:
Equals
-
ReferencedVariableValue:
Contoso
Anschließend wird die folgende Regel hinzugefügt: IF OSDRegisteredOrgName equals "Contoso" THEN
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ReferencedVariableOperator
Geben Sie die Bedingung für den Regeltyp Tasksequenzvariable an . Dazu müssen Sie auch die Parameter ReferencedVariableName und ReferencedVariableValue festlegen. Informationen zu den verfügbaren Operatoren finden Sie in der Liste der akzeptierten Werte für diesen Parameter.
Wenn Sie beispielsweise die folgenden Werte festlegen:
-
ReferencedVariableName:
OSDRegisteredOrgName
-
ReferencedVariableOperator:
Equals
-
ReferencedVariableValue:
Contoso
Anschließend wird die folgende Regel hinzugefügt: IF OSDRegisteredOrgName equals "Contoso" THEN
Typ: | VariableOperatorType |
Zulässige Werte: | Exists, NotExists, Equals, NotEquals, Greater, GreaterEqual, Less, LessEqual, Like, NotLike |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ReferencedVariableValue
Geben Sie den Wert für den Regeltyp Tasksequenzvariable an . Dazu müssen Sie auch die Parameter ReferencedVariableName und ReferencedVariableOperator festlegen.
Wenn Sie beispielsweise die folgenden Werte festlegen:
-
ReferencedVariableName:
OSDRegisteredOrgName
-
ReferencedVariableOperator:
Equals
-
ReferencedVariableValue:
Contoso
Anschließend wird die folgende Regel hinzugefügt: IF OSDRegisteredOrgName equals "Contoso" THEN
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-SerialNumber
Geben Sie eine Seriennummer für den Regeltyp Computer an.
Wenn Sie diesen Wert beispielsweise auf 123456
festlegen, wird die folgende Regel hinzugefügt: IF Asset tag equals "123456" THEN
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Uuid
Geben Sie eine UUID für den Regeltyp Computer an.
Wenn Sie diesen Wert beispielsweise auf de5ba380-f692-45e0-bbd3-0e40543b549e
festlegen, wird die folgende Regel hinzugefügt: IF UUID equals "de5ba380-f692-45e0-bbd3-0e40543b549e" THEN
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Variable
Geben Sie die vorhandenen oder benutzerdefinierten Tasksequenzvariablen und die zugehörigen Werte an, die der Schritt festlegen soll, wenn die Regel als true ausgewertet wird.
Wenn Sie diesen Wert beispielsweise auf @{'OSDDownloadDestinationLocationType' = 'TSCache'}
festlegen, wird die folgende Variable nach dem THEN
der Regel hinzugefügt: SET OSDDownloadDestinationLocationType = "TSCache"
Um mehr als eine Variable in derselben Hashtabelle anzugeben, verwenden Sie ein Semikolontrennzeichen (;
). Beispiel: @{'OSDRegisteredUserName' = 'Contoso';'OSDRegisteredOrgName' = 'Contoso'}
Typ: | Hashtable |
Aliase: | Variables |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
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