Udostępnij za pośrednictwem


Clear-Variable

Usuwa wartość zmiennej.

Składnia

Clear-Variable
     [-Name] <String[]>
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-Force]
     [-PassThru]
     [-Scope <String>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Opis

Polecenie cmdlet Clear-Variable usuwa dane przechowywane w zmiennej, ale nie usuwa zmiennej. W związku z tym wartość zmiennej ma wartość NULL (pusta). Jeśli zmienna ma określony typ danych lub obiektu, to polecenie cmdlet zachowuje typ obiektu przechowywanego w zmiennej.

Przykłady

Przykład 1. Usuwanie wartości zmiennych globalnych rozpoczynających się ciągiem wyszukiwania

Clear-Variable my* -Scope Global

To polecenie usuwa wartość zmiennych globalnych, które mają nazwy rozpoczynające się od mojego.

Przykład 2. Wyczyść zmienną w zakresie podrzędnym, ale nie w zakresie nadrzędnym

$a=3
&{ Clear-Variable a }
$a

3

Te polecenia pokazują, że wyczyszczenie zmiennej w zakresie podrzędnym nie powoduje wyczyszczenia wartości w zakresie nadrzędnym. Pierwsze polecenie ustawia wartość zmiennej $a na 3. Drugie polecenie używa operatora invoke (&) do uruchomienia polecenia Clear-Variable w nowym zakresie. Zmienna jest czyszczone w zakresie podrzędnym (chociaż nie istnieje), ale nie jest czyszczone w zakresie lokalnym. Trzecie polecenie, które pobiera wartość $a, pokazuje, że wartość 3 nie ma wpływu.

Przykład 3. Usuwanie wartości określonej zmiennej

Clear-Variable -Name "Processes"

To polecenie usuwa wartość zmiennej o nazwie Procesy. Po zakończeniu operacji polecenia cmdlet zmienna o nazwie Procesy nadal istnieje, ale wartość ma wartość null.

Parametry

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Exclude

Określa tablicę elementów pomijanych przez to polecenie cmdlet w operacji. Wartość tego parametru kwalifikuje parametr Name. Wprowadź element nazwy lub wzorzec, taki jak "s*". Dozwolone są symbole wieloznaczne.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:True

-Force

Umożliwia poleceniem cmdlet wyczyszczenie zmiennej nawet wtedy, gdy jest tylko do odczytu. Nawet przy użyciu parametru Force polecenie cmdlet nie może wyczyścić stałych.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Include

Określa tablicę elementów, które zawiera to polecenie cmdlet w operacji. Wartość tego parametru kwalifikuje parametr Name. Wprowadź element nazwy lub wzorzec, taki jak "s*". Dozwolone są symbole wieloznaczne.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:True

-Name

Określa nazwę zmiennej do wyczyszczenia. Dozwolone są symbole wieloznaczne. Ten parametr jest wymagany, ale nazwa parametru Nazwa jest opcjonalna.

Typ:String[]
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:True

-PassThru

Zwraca obiekt reprezentujący element, z którym pracujesz. Domyślnie to polecenie cmdlet nie generuje żadnych danych wyjściowych.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Scope

Określa zakres, w którym ten alias jest prawidłowy.

Dopuszczalne wartości tego parametru to:

  • Global
  • Local
  • Script

Można również użyć liczby względem bieżącego zakresu (0 przez liczbę zakresów, gdzie 0 jest bieżącym zakresem, a 1 jest jego elementem nadrzędnym). Wartość lokalna to wartość domyślna. Aby uzyskać więcej informacji, zobacz about_Scopes.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-WhatIf

Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione. Polecenie cmdlet nie jest uruchamiane.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

None

Nie można potokować obiektów do tego polecenia cmdlet.

Dane wyjściowe

None or System.Management.Automation.PSVariable

Jeśli używasz parametru PassThru, to polecenie cmdlet generuje System.Management.Automation.PSVariable obiektu reprezentującego wyczyszczonej zmiennej. W przeciwnym razie to polecenie cmdlet nie generuje żadnych danych wyjściowych.

Uwagi

  • Aby usunąć zmienną wraz z jej wartością, użyj Remove-Variable lub Remove-Item.

    To polecenie cmdlet nie usuwa wartości zmiennych, które są ustawiane jako stałe lub należące do systemu, nawet jeśli używasz parametru Force.

    Jeśli zmienna, która jest czyszcząca, nie istnieje, polecenie cmdlet nie ma efektu. Nie tworzy zmiennej z wartością null.

    Możesz również odwołać się do Clear-Variable za pomocą wbudowanego aliasu clv. Aby uzyskać więcej informacji, zobacz about_Aliases.