about_Variable_Provider

Nazwa dostawcy

Zmienna

Napędy

Variable:

Możliwości

ShouldProcess

Krótki opis

Zapewnia dostęp do zmiennych programu PowerShell i ich wartości.

Szczegółowy opis

Dostawca zmiennych programu PowerShell umożliwia uzyskiwanie, dodawanie, zmienianie, usuwanie i usuwanie zmiennych programu PowerShell w bieżącej konsoli.

Dostawca zmiennych programu PowerShell obsługuje zmienne, które tworzy program PowerShell, w tym automatyczne zmienne, zmienne preferencji i zmienne, które tworzysz.

Dysk zmiennej jest płaską przestrzenią nazw, która zawiera tylko obiekty zmiennych. Zmienne nie mają elementów podrzędnych.

Dostawca zmiennych obsługuje następujące polecenia cmdlet, które zostały uwzględnione w tym artykule.

Program PowerShell zawiera również zestaw poleceń cmdlet zaprojektowanych specjalnie do wyświetlania i zmieniania zmiennych. W przypadku używania polecenia cmdlet zmiennej nie trzeba określać Variable: dysku w nazwie. Ten artykuł nie obejmuje pracy z poleceniami cmdlet zmiennej.

Uwaga

Za pomocą parsera wyrażeń programu PowerShell można również tworzyć, wyświetlać i zmieniać wartości zmiennych bez używania poleceń cmdlet. Podczas bezpośredniej pracy ze zmiennymi użyj znaku dolara ($), aby zidentyfikować nazwę jako zmienną, oraz operatora przypisania (=) w celu ustalenia i zmiany jego wartości. Na przykład program $p = Get-Process tworzy zmienną p i zapisuje w nim Get-Process wyniki polecenia.

Typy udostępniane przez tego dostawcę

Zmienne mogą być jednym z kilku różnych typów. Większość zmiennych będzie wystąpieniami PSVariable klasy . Poniżej wymieniono inne zmienne i ich typy.

  • Zmienna ? jest wystąpieniem QuestionMarkVariable klasy .
  • Zmienna null jest wystąpieniem NullVariable klasy .
  • Maksymalna liczba zmiennych to wystąpienia SessionStateCapacityVariable klasy .
  • LocalVariable Wystąpienia zawierają informacje o bieżącym wykonaniu, takie jak:
    • MyInvocation
    • PSCommandPath
    • PSScriptRoot
    • PSBoundParameters
    • args
    • input

Dostawca zmiennych uwidacznia swój magazyn danych na Variable: dysku. Aby pracować ze zmiennymi, możesz zmienić Variable: lokalizację na dysk (Set-Location Variable:) lub pracować z dowolnego innego dysku programu PowerShell. Aby odwołać się do zmiennej z innej lokalizacji, użyj nazwy dysku (Variable:) w ścieżce.

Set-Location Variable:

Aby powrócić do dysku systemu plików, wpisz nazwę dysku. Na przykład wpisz:

Set-Location C:

Możesz również pracować z dostawcą zmiennych z dowolnego innego dysku programu PowerShell. Aby odwołać się do zmiennej z innej lokalizacji, użyj nazwy dysku Variable: w ścieżce.

Uwaga

Program PowerShell używa aliasów, aby umożliwić znajomy sposób pracy ze ścieżkami dostawców. Polecenia, takie jak dir i ls , są teraz aliasami dla polecenia Get-ChildItem, cd to alias polecenia Set-Location. i pwd jest aliasem dla get lokalizacji.

Wyświetlanie wartości zmiennych

Pobierz wszystkie zmienne w bieżącej sesji

To polecenie pobiera listę wszystkich zmiennych i ich wartości w bieżącej sesji. Tego polecenia można użyć z dowolnego dysku programu PowerShell.

Get-ChildItem -Path Variable:

Uzyskiwanie zmiennej przy użyciu ścieżki dostawcy

To polecenie pobiera wartość zmiennych przy użyciu ścieżki dostawcy poprzedzonej znakiem dolara ($). Ma to taki sam efekt jak prefiks nazwy zmiennych znakiem dolara ($).

$variable:home

Uzyskiwanie zmiennych przy użyciu symboli wieloznacznych

To polecenie pobiera zmienne o nazwach, które zaczynają się od "max". Tego polecenia można użyć z dowolnego dysku programu PowerShell.

Get-ChildItem -Path Variable:max*

Pobierz wartość ? zmienna

To polecenie używa parametru -LiteralPath Get-ChildItem , aby uzyskać wartość zmiennej ? z dysku Variable: . Symbol ? wieloznaczny w ścieżkach, ale Get-ChildItem nie próbuje rozpoznać symboli wieloznacznych w wartościach parametru -LiteralPath .

Get-ChildItem -Literalpath ?

Pobierz zmienne ReadOnly i Constant

To polecenie pobiera zmienne, które mają wartości właściwości ReadOnly Options Constant lub .

Get-ChildItem -Path Variable: | Where-Object {
   $_.options -Match "Constant" `
   -or $_.options -Match "ReadOnly"
 } | Format-List -Property name, value, options

Tworzenie zmiennych

Tworzenie nowej zmiennej

To polecenie tworzy zmienną services i przechowuje w nim Get-Service wyniki polecenia. Ponieważ bieżąca lokalizacja znajduje się na Variable: dysku, -Path wartość parametru jest kropką (.), która reprezentuje bieżącą lokalizację.

Nawiasy wokół polecenia zapewniają Get-Service wykonanie polecenia przed utworzeniem zmiennej. Bez nawiasów wartość nowej zmiennej jest ciągiem "Get-Service".

New-Item -Path . -Name services -Value (Get-Service)

Tworzenie zmiennej przy użyciu ścieżki bezwzględnej

To polecenie tworzy zmienną services i zapisuje w nim wynik Get-Service polecenia.

New-Item -Path Variable:services -Value Get-Service

Aby utworzyć zmienną bez wartości, pomiń operator przypisania.

Zmienianie zmiennych

Zmienianie nazwy zmiennej

To polecenie używa polecenia Rename-Item cmdlet , aby zmienić nazwę zmiennej na a processes.

Rename-Item -Path Variable:a -NewName processes

Zmienianie wartości zmiennej

To polecenie używa polecenia Set-Item cmdlet , aby zmienić wartość ErrorActionPreference zmiennej na "Stop".

Set-Item -Path Variable:ErrorActionPreference -Value Stop

Kopiowanie zmiennej

To polecenie używa polecenia Copy-Item cmdlet , aby skopiować zmienną processes do polecenia old_processes. Powoduje to utworzenie nowej zmiennej o nazwie old_processes , która ma taką samą wartość jak zmienna processes .

Copy-Item -Path Variable:processes -Destination Variable:old_processes

Usuwanie zmiennej

To polecenie usuwa zmienną serv z bieżącej sesji. Tego polecenia można użyć na dowolnym dysku programu PowerShell.

Remove-Variable -Path Variable:serv

Usuwanie zmiennych przy użyciu parametru -Force

To polecenie usuwa wszystkie zmienne z bieżącej sesji z wyjątkiem zmiennych, których właściwość Options ma wartość Constant. Bez parametru -Force polecenie nie usuwa zmiennych, których właściwość Options ma wartość ReadOnly.

Remove-Item Variable:* -Force

Ustawianie wartości zmiennej na NULL

To polecenie używa polecenia Clear-Item cmdlet , aby zmienić wartość zmiennej na processes NULL.

Clear-Item -Path Variable:processes

Korzystanie z potoku

Polecenia cmdlet dostawcy akceptują dane wejściowe potoku. Potoku można użyć do uproszczenia zadania, wysyłając dane dostawcy z jednego polecenia cmdlet do innego polecenia cmdlet dostawcy. Aby dowiedzieć się więcej na temat używania potoku z poleceniami cmdlet dostawcy, zobacz odwołania do polecenia cmdlet podane w tym artykule.

Uzyskiwanie pomocy

Począwszy od Windows PowerShell 3.0, można uzyskać dostosowane tematy pomocy dla polecenia cmdlet dostawcy, które wyjaśniają, jak te polecenia cmdlet zachowują się na dysku systemu plików.

Aby uzyskać tematy pomocy dostosowane dla dysku systemu plików, uruchom polecenie Get-Help -Path na dysku systemu plików lub użyj parametru Get-Help , aby określić dysk systemu plików.

Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path variable:

Zobacz też