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 pobieranie, dodawanie, zmienianie, czyszczenie i usuwanie zmiennych programu PowerShell w bieżącej konsoli.

Dostawca zmiennych programu PowerShell obsługuje zmienne tworzone przez program PowerShell, w tym zmienne automatyczne, zmienne preferencji i tworzone zmienne.

Dysk Zmienna 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 omówione w tym artykule.

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

Uwaga

Możesz również użyć analizatora wyrażeń programu PowerShell do tworzenia, wyświetlania i zmieniania wartości zmiennych bez używania poleceń cmdlet. Podczas bezpośredniej pracy ze zmiennymi użyj znaku dolara ($), aby zidentyfikować nazwę jako zmienną i operator przypisania (=), aby ustanowić i zmienić jego wartość. Na przykład $p = Get-Process tworzy zmienną p i przechowuje wyniki Get-Process polecenia w nim.

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.
  • Zmienne maksymalnej liczby 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 magazyn danych na Variable: dysku. Aby pracować ze zmiennymi, możesz zmienić lokalizację na Variable: 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ą zmiennej z dowolnego innego dysku programu PowerShell. Aby odwołać się do zmiennej z innej lokalizacji, użyj nazwy Variable: dysku w ścieżce.

Uwaga

Program PowerShell używa aliasów, aby umożliwić znaną pracę ze ścieżkami dostawcy. Polecenia, takie jak dir i ls są teraz aliasami get-ChildItem, cd to alias set-location. i pwd jest aliasem get-location.

Wyświetlanie wartości zmiennych

Pobieranie wszystkich zmiennych w bieżącej sesji

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

Get-ChildItem -Path Variable:

Pobieranie 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 prefiksowanie nazwy zmiennych z znakiem dolara ($).

$variable:home

Pobieranie zmiennych przy użyciu symboli wieloznacznych

To polecenie pobiera zmienne z nazwami rozpoczynającymi się od "max". To polecenie można użyć z dowolnego dysku programu PowerShell.

Get-ChildItem -Path Variable:max*

Pobierz wartość elementu ? zmienna

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

Get-ChildItem -Literalpath ?

Pobieranie zmiennych ReadOnly i stałych

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

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 wyniki Get-Service polecenia w nim. Ponieważ bieżąca lokalizacja znajduje się na Variable: dysku, wartość parametru -Path to kropka (.), która reprezentuje bieżącą lokalizację.

Nawiasy wokół Get-Service polecenia zapewniają, że polecenie jest wykonywane 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 przechowuje wynik Get-Service polecenia w nim.

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 Rename-Item polecenia cmdlet, aby zmienić nazwę zmiennej a na processes.

Rename-Item -Path Variable:a -NewName processes

Zmienianie wartości zmiennej

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

Set-Item -Path Variable:ErrorActionPreference -Value Stop

Kopiowanie zmiennej

To polecenie używa Copy-Item polecenia cmdlet do skopiowania zmiennej processes do old_processes. Spowoduje 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. To polecenie 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 Clear-Item polecenia cmdlet, aby zmienić wartość zmiennej processes na NULL.

Clear-Item -Path Variable:processes

Korzystanie z potoku

Polecenia cmdlet dostawcy akceptują dane wejściowe potoku. Potok umożliwia uproszczenie zadania przez wysyłanie danych dostawcy z jednego polecenia cmdlet do innego polecenia cmdlet dostawcy. Aby dowiedzieć się więcej o sposobie używania potoku z poleceniami cmdlet dostawcy, zobacz odwołania do poleceń cmdlet podane w tym artykule.

Uzyskiwanie pomocy

Począwszy od Windows PowerShell 3.0, możesz uzyskać dostosowane tematy pomocy dla poleceń 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 na dysku systemu plików lub użyj -Path parametru Get-Help , aby określić dysk systemu plików.

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

Zobacz też