Clear-Variable
Löscht den Wert einer Variablen.
Syntax
Clear-Variable
[-Name] <String[]>
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-PassThru]
[-Scope <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Das Clear-Variable
Cmdlet löscht die in einer Variablen gespeicherten Daten, löscht jedoch nicht die Variable. Daher ist der Wert der Variablen NULL (leer). Wenn die Variable über einen angegebenen Daten- oder Objekttyp verfügt, behält dieses Cmdlet den Typ des objekts bei, das in der Variablen gespeichert ist.
Beispiele
Beispiel 1: Entfernen des Werts globaler Variablen, die mit einer Suchzeichenfolge beginnen
Clear-Variable my* -Scope Global
Mit diesem Befehl wird der Wert von globalen Variablen entfernt, die Namen enthalten, die mit meinem Namen beginnen.
Beispiel 2: Löschen einer Variablen in einem untergeordneten Bereich, aber nicht im übergeordneten Bereich
$a=3
&{ Clear-Variable a }
$a
3
Diese Befehle veranschaulichen, dass durch das Löschen einer Variablen in einem untergeordneten Bereich der Wert im übergeordneten Bereich nicht gelöscht wird. Der erste Befehl legt den Wert der Variablen $a
auf 3 fest. Der zweite Befehl verwendet den Aufrufoperator (&
), um den Clear-Variable
Befehl in einem neuen Bereich auszuführen. Die Variable wird im untergeordneten Bereich gelöscht (obwohl sie nicht vorhanden war), aber nicht im lokalen Bereich.
Der dritte Befehl, der den Wert erhält $a
, zeigt an, dass der Wert 3 nicht betroffen ist.
Beispiel 3: Löschen des Werts der angegebenen Variablen
Clear-Variable -Name "Processes"
Mit diesem Befehl wird der Wert der Variablen namens "Prozesse" gelöscht. Nachdem das Cmdlet den Vorgang abgeschlossen hat, ist die Variable mit dem Namen "Prozesse" noch vorhanden, der Wert ist jedoch NULL.
Parameter
-Confirm
Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.
Typ: | SwitchParameter |
Aliase: | cf |
Position: | Named |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Exclude
Gibt ein Array von Elementen an, die dieses Cmdlet im Vorgang ausgelassen. Der Wert dieses Parameters qualifiziert den Name-Parameter . Geben Sie ein Namenselement oder -muster wie %%amp;quot;s*%%amp;quot; ein. Platzhalter sind zulässig.
Typ: | String[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | True |
-Force
Ermöglicht dem Cmdlet, eine Variable zu löschen, selbst wenn sie schreibgeschützt ist. Selbst bei Verwendung des Force-Parameters kann das Cmdlet keine Konstanten löschen.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Include
Gibt ein Array von Elementen an, die dieses Cmdlet in den Vorgang einschließt. Der Wert dieses Parameters qualifiziert den Name-Parameter . Geben Sie ein Namenselement oder -muster wie %%amp;quot;s*%%amp;quot; ein. Platzhalter sind zulässig.
Typ: | String[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | True |
-Name
Gibt den Namen der zu löschenden Variablen an. Platzhalter sind zulässig. Dieser Parameter ist erforderlich, der Parametername ist jedoch optional.
Typ: | String[] |
Position: | 0 |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | True |
-PassThru
Gibt ein Objekt zurück, das das Element darstellt, mit dem Sie arbeiten. Standardmäßig wird von diesem Cmdlet keine Ausgabe generiert.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Scope
Gibt den Bereich an, in dem dieser Alias gültig ist.
Zulässige Werte für diesen Parameter:
Global
Local
Script
Sie können auch eine Zahl relativ zum aktuellen Bereich verwenden (0 bis zur Anzahl der Bereiche, wobei 0 der aktuelle Bereich ist und 1 das übergeordnete Element ist). Lokal ist die Standardeinstellung. Weitere Informationen finden Sie unter about_Scopes.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-WhatIf
Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Typ: | SwitchParameter |
Aliase: | wi |
Position: | Named |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
None
Sie können keine Objekte an dieses Cmdlet weiterleiten.
Ausgaben
None
Standardmäßig gibt dieses Cmdlet keine Ausgabe zurück.
Wenn Sie den PassThru-Parameter verwenden, gibt dieses Cmdlet ein PSVariable-Objekt zurück, das die gelöschte Variable darstellt.
Hinweise
PowerShell enthält die folgenden Aliase für Clear-Variable
:
Alle Plattformen:
clv
Um eine Variable zusammen mit dem Wert zu löschen, verwenden
Remove-Variable
OderRemove-Item
.Dieses Cmdlet löscht nicht die Werte von Variablen, die als Konstanten oder im Besitz des Systems festgelegt werden, auch wenn Sie den Parameter Force verwenden.
Wenn die Variable, die Sie löschen, nicht vorhanden ist, hat das Cmdlet keine Auswirkungen. Es wird keine Variable wird mit dem Wert „null“ erstellt.