Optionen "WhatIf", "Confirm" und "ValidateOnly"WhatIf, Confirm, and ValidateOnly switches

Gilt für: Exchange Server 2013Applies to: Exchange Server 2013

Sowohl erfahrene Administratoren als auch Skriptautoren sowie Administratoren, die neu in Exchange und Skripting sind, können die Optionen WhatIf, Confirmund ValidateOnly nutzen.Both experienced administrators and script writers, and administrators who are new to Exchange and scripting, can benefit from using the WhatIf, Confirm, and ValidateOnly switches. Mit ihrer Hilfe können Sie die Ausführung von Befehlen steuern und exakt anzeigen, welches Ergebnis ein Befehl liefert, bevor dieser auf Daten angewendet wird.These switches let you control how your commands run and indicate exactly what a command will do before it affects data. Diese Funktionalität ist besonders wichtig beim Wechsel von der Testumgebung zur Produktionsumgebung und beim Bereitstellen neuer Skripts oder Befehle.This functionality is quite valuable as you transition from your test environment into your production environment and as you roll out new scripts or commands.

Die Optionen WhatIf, Confirmund ValidateOnly sind besonders nützlich, wenn Sie Sie mit Befehlen verwenden, die Objekte ändern, die mithilfe eines Filters oder mithilfe eines Get -Befehls in einer Pipeline zurückgegeben werden.The WhatIf, Confirm, and ValidateOnly switches are especially useful when you use them with commands that modify objects that are returned by using a filter or by using a Get command in a pipeline. In diesem Thema werden die einzelnen Parameter beschrieben und Beispielbefehle bereitgestellt.This topic describes each switch and also provides an example command for each switch.

Wichtig

Wenn Sie die Optionen WhatIf, Confirmund ValidateOnly mit Befehlen in einem Skript verwenden möchten, müssen Sie jedem Befehl im Skript die entsprechende Option hinzufügen und nicht an der Befehlszeile, die das Skript aufruft.If you want to use the WhatIf, Confirm, and ValidateOnly switches with commands in a script, you must add the appropriate switch to each command in the script, and not on the command line that calls the script.

Hinweis

WhatIf, Confirmund ValidateOnly werden als Switch-Parameter bezeichnet.WhatIf, Confirm, and ValidateOnly are called switch parameters. Weitere Informationen zu Schalterparametern finden Sie unter Parameters.For more information about switch parameters, see Parameters.

Option "WhatIf"WhatIf switch

Die Option WhatIf weist den Befehl an, auf den Sie angewendet wird, aber nur, um die Objekte anzuzeigen, die von der Ausführung des Befehls betroffen wären, und welche Änderungen an diesen Objekten vorgenommen würden.The WhatIf switch instructs the command to which it is applied to run but only to display the objects that would be affected by running the command and what changes would be made to those objects. Der Parameter ändert diese Objekte nicht wirklich.The switch does not actually change any of those objects. Wenn Sie die Option WhatIf verwenden, können Sie erkennen, ob die Änderungen, die an diesen Objekten vorgenommen werden, Ihren Erwartungen entsprechen, ohne dass diese Objekte geändert werden müssen.When you use the WhatIf switch, you can see whether the changes that would be made to those objects match your expectations, without the worry of modifying those objects.

Wenn Sie einen Befehl zusammen mit der Option WhatIf ausführen, stellen Sie die Option WhatIf am Ende des Befehls ein, wie im folgenden Beispiel dargestellt:When you run a command together with the WhatIf switch, you put the WhatIf switch at the end of the command, as in the following example:

New-AcceptedDomain -Name "Contoso Domain" -DomainName "contoso.com" -WhatIf

Wenn Sie diesen Beispielbefehl ausführen, wird der folgende Text von der Shell zurückgegeben:When you run this example command, the following text is returned by the Shell:

What if: Creating Accepted Domain "Contoso Domain" with domain name "contoso.com".

Option "Confirm"Confirm switch

Die Option Confirm weist den Befehl an, auf den Sie angewendet wird, um die Verarbeitung zu beenden, bevor Änderungen vorgenommen werden.The Confirm switch instructs the command to which it is applied to stop processing before any changes are made. Danach werden Sie aufgefordert, die einzelnen Aktionen zu bestätigen, bevor die Verarbeitung fortgesetzt wird.The command then prompts you to acknowledge each action before it continues. Wenn Sie die Option Confirm verwenden, können Sie die Änderungen an Objekten durchlaufen, um sicherzustellen, dass nur Änderungen an den spezifischen Objekten vorgenommen werden, die Sie ändern möchten.When you use the Confirm switch, you can step through changes to objects to make sure that changes are made only to the specific objects that you want to change. Diese Funktion ist hilfreich, wenn Sie viele Objekte ändern und eine präzise Kontrolle über die Operation der Shell wünschen.This functionality is useful when you apply changes to many objects and want precise control over the operation of the Shell. Es wird eine Bestätigungsaufforderung zu jedem einzelnen Objekt angezeigt, bevor dieses von der Shell geändert wird.A confirmation prompt is displayed for each object before the Shell modifies the object.

Standardmäßig wendet die Shell die Option Confirm automatisch auf Cmdlets mit den folgenden Verben an:By default, the Shell automatically applies the Confirm switch to cmdlets that have the following verbs:

  • ClearClear

  • DisableDisable

  • DismountDismount

  • MoveMove

  • RemoveRemove

  • StopStop

  • SuspendSuspend

  • UninstallUninstall

Wenn ein Cmdlet ausgeführt wird, das eines dieser Verben enthält, hält die Shell den Befehl automatisch an und wartet auf eine Bestätigung zum Fortsetzen des Prozesses.When a cmdlet runs that has any of these verbs, the Shell automatically stops the command and waits for your acknowledgement before it continues to process.

Wenn Sie die Option Confirm manuell auf einen Befehl anwenden möchten, fügen Sie die Option Confirm am Ende des Befehls ein, wie im folgenden Beispiel dargestellt:If you want to manually apply the Confirm switch to a command, include the Confirm switch at the end of the command, as in the following example:

Get-JournalRule | Enable-JournalRule -Confirm

Wenn Sie diesen Beispielbefehl ausführen, wird die folgende Bestätigungsaufforderung von der Shell zurückgegeben:When you run this example command, the following confirmation prompt is returned by the Shell:

Confirm
Are you sure you want to perform this action?
Enabling journal rule "Litigation Journal Rule".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help
(default is "Y"):

Die Bestätigungsaufforderung bietet folgende Auswahlmöglichkeiten:The confirmation prompt gives you the following choices:

  • [Y] Yes: Geben Sie y ein, um den Befehl anzuweisen, den Vorgang fortzusetzen.[Y] Yes: Type Y to instruct the command to continue the operation. Der nächste Vorgang zeigt eine weitere Bestätigungsaufforderung an.The next operation will present another confirmation prompt. [Y] Yes ist standardmäßig ausgewählt.[Y] Yes is the default choice.

  • [A] ja to all: Geben Sie a ein , um den Befehl anzuweisen, den Vorgang und alle nachfolgenden Vorgänge fortzusetzen.[A] Yes to All: Type A to instruct the command to continue the operation and all subsequent operations. Während der Ausführung dieses Befehls werden keinen weiteren Bestätigungsaufforderungen angezeigt.You will not receive additional confirmation prompts for the duration of this command.

  • [N] No: Geben Sie n ein, um den Befehl anzuweisen, diesen Vorgang zu überspringen und mit dem nächsten Vorgang fortzufahren.[N] No: Type N to instruct the command to skip this operation and continue with the next operation. Beim nächsten Vorgang wird eine weitere Bestätigungsaufforderung angezeigt.The next operation will present another confirmation prompt.

  • [L] Nein für alle: Geben Sie l an, um den Befehl anzuweisen, diesen Vorgang und alle nachfolgenden Vorgänge auszulassen.[L] No to All: Type L to instruct the command to skip this operation and all subsequent operations.

  • [S] Suspend: Geben Sie s ein, um die aktuelle Pipeline anzuhalten und zur Befehlszeile zurückzukehren.[S] Suspend: Type S to pause the current pipeline and return to the command line. Geben Sie Exit ein, um die Pipeline fortzusetzen.Type Exit to resume the pipeline.

  • **[? Hilfe ] **: Typ ?[?] Help: Type ? ein, um Hilfeinformationen zur Bestätigungsaufforderung in der Befehlszeile anzuzeigen.to display confirmation prompt Help on the command line.

Wenn Sie das Standardverhalten der Shell außer Kraft setzen und die Bestätigungsaufforderung für Cmdlets unterdrücken möchten, für die es automatisch angewendet wird, können Sie die Confirm -Option mit $Falsedem Wert von einschließen, wie im folgenden Beispiel dargestellt:If you want to override the default behavior of the Shell and suppress the confirmation prompt for cmdlets on which it is automatically applied, you can include the Confirm switch with a value of $False, as in the following example:

Get-JournalRule | Disable-JournalRule -Confirm:$False

In diesem Fall wird keine Bestätigungsaufforderung angezeigt.In this case, no confirmation prompt is displayed.

Warnung

Der Standardwert für die Option Confirm lautet $True.The default value of the Confirm switch is $True. Die Shell zeigt standardmäßig automatisch eine Bestätigungsaufforderung an.The default behavior of the Shell is to automatically display a confirmation prompt. Wenn Sie dieses Standardverhalten unterdrücken, weisen Sie den Befehl an, alle Bestätigungsaufforderungen für die Dauer des Befehls zu unterdrücken.If you suppress this default behavior, you instruct the command to suppress all confirmation prompts for the duration of that command. Der Befehl verarbeitet alle Objekte, die den Befehlskriterien entsprechen, ohne Bestätigung.The command will process all objects that meet the criteria for the command without confirmation.

Option "ValidateOnly"ValidateOnly switch

Der ValidateOnly -Schalter weist den Befehl an, auf den er angewendet wird, um alle Bedingungen und Anforderungen auszuwerten, die erforderlich sind, um den Vorgang auszuführen, bevor Sie Änderungen vornehmen.The ValidateOnly switch instructs the command to which it is applied to evaluate all the conditions and requirements that are needed to perform the operation before you apply any changes. Die ValidateOnly -Option steht für Cmdlets zur Verfügung, die möglicherweise sehr viel Zeit in Anspruch nehmen, mehrere Abhängigkeiten von mehreren Systemen aufweisen oder wichtige Daten wie Postfächer beeinflussen.The ValidateOnly switch is available on cmdlets that may take a long time to run, have several dependencies on multiple systems, or affect critical data, such as mailboxes.

Wenn Sie den ValidateOnly -Schalter auf einen Befehl anwenden, wird der gesamte Prozess durch den Befehl ausgeführt.When you apply the ValidateOnly switch to a command, the command runs through the whole process. Der Befehl führt jede Aktion so aus, wie dies ohne die ValidateOnly -Option der Fall wäre.The command performs each action as it would without the ValidateOnly switch. Er ändert dabei jedoch keines der Objekte.But the command doesn't change any objects. Wenn der Befehl den Prozess abschließt, zeigt er eine Zusammenfassung mit dem Ergebnis der Überprüfung an.When the command completes its process, it displays a summary with the results of the validation. Wenn die Überprüfung darauf hinweist, dass der Befehl erfolgreich war, können Sie den Befehl ohne die ValidateOnly -Option erneut ausführen.If the validation indicates that the command was successful, you can run the command again without the ValidateOnly switch.

Wenn Sie einen Befehl zusammen mit dem ValidateOnly -Schalter ausführen, platzieren Sie den ValidateOnly -Schalter am Ende des Befehls.When you run a command together with the ValidateOnly switch, you put the ValidateOnly switch at the end of the command.