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
lubRemove-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 aliasuclv
. Aby uzyskać więcej informacji, zobacz about_Aliases.