Freigeben über


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.

PSVariable

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 Oder Remove-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.