Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Podczas nawigowania po systemach folderów w Eksploratorze plików zwykle istnieje określona lokalizacja robocza — a mianowicie bieżący otwarty folder. Elementy w bieżącym folderze można łatwo manipulować, klikając je. W przypadku interfejsów wiersza polecenia, takich jak Cmd.exe, gdy jesteś w tym samym folderze co określony plik, możesz uzyskać do niego dostęp, określając stosunkowo krótką nazwę, zamiast określać całą ścieżkę do pliku. Bieżący katalog jest nazywany katalogem roboczym.
Program PowerShell używa rzeczownika Location do odwoływania się do katalogu roboczego i implementuje rodzinę poleceń cmdlet do badania lokalizacji i manipulowania nią.
Pobieranie bieżącej lokalizacji (Get-Location)
Aby określić ścieżkę bieżącej lokalizacji katalogu, wprowadź polecenie Get-Location
:
Get-Location
Path
----
C:\Documents and Settings\PowerUser
Uwaga
Polecenie cmdlet Get-Location
jest podobne do polecenia pwd w powłoce BASH. Polecenie cmdlet Set-Location
jest podobne do polecenia cd w Cmd.exe.
Ustawianie bieżącej lokalizacji (Set-Location)
Polecenie Get-Location
jest używane z poleceniem Set-Location
. Polecenie Set-Location
umożliwia określenie bieżącej lokalizacji katalogu.
Set-Location -Path C:\Windows
Po wprowadzeniu polecenia zwróć uwagę, że nie otrzymasz żadnych bezpośrednich opinii na temat efektu polecenia. Większość poleceń programu PowerShell wykonujących akcję generuje niewiele danych wyjściowych, ponieważ dane wyjściowe nie zawsze są przydatne. Aby sprawdzić, czy po wprowadzeniu polecenia Set-Location
wystąpiła pomyślna zmiana katalogu, dołącz parametr PassThru podczas wprowadzania polecenia Set-Location
:
Set-Location -Path C:\Windows -PassThru
Path
----
C:\WINDOWS
Parametr PassThru może być używany z wieloma poleceniami Set w PowerShell, aby zwrócić informacje o wyniku w przypadkach, w których nie ma domyślnego wyjścia.
Ścieżki względem bieżącej lokalizacji można określić w taki sam sposób, jak w większości powłok poleceń systemów Unix i Windows. W standardowej notacji dla ścieżek względnych kropka (.
) reprezentuje bieżący folder, a podwójna kropka (..
) reprezentuje katalog nadrzędny bieżącego folderu.
Jeśli na przykład jesteś w folderze C:\Windows
, kropka (.
) reprezentuje C:\Windows
i podwójne kropki (..
) reprezentują C:
. Możesz przejść z bieżącej lokalizacji do katalogu głównego dysku C:
, wpisując:
Set-Location -Path .. -PassThru
Path
----
C:\
Ta sama technika działa na dyskach programu PowerShell, które nie są dyskami systemu plików, takimi jak HKLM:
. Lokalizację można ustawić na klucz HKLM\Software
w rejestrze, wpisując:
Set-Location -Path HKLM:\SOFTWARE -PassThru
Path
----
HKLM:\SOFTWARE
Następnie możesz zmienić lokalizację katalogu na katalog nadrzędny przy użyciu ścieżki względnej:
Set-Location -Path .. -PassThru
Path
----
HKLM:\
Możesz wpisać Set-Location
lub użyć dowolnego wbudowanego aliasu programu PowerShell dla Set-Location
(cd
, chdir
, sl
). Na przykład:
cd -Path C:\Windows
chdir -Path .. -PassThru
sl -Path HKLM:\SOFTWARE -PassThru
Zapisywanie i przywoływanie ostatnich lokalizacji (Push-Location i Pop-Location)
Podczas zmieniania lokalizacji warto śledzić, gdzie byłeś i móc wrócić do poprzedniej lokalizacji. Polecenie cmdlet Push-Location
w programie PowerShell tworzy uporządkowaną historię (stos) ścieżek katalogów, w których byłeś, i możesz przejść wstecz przez historię ścieżek katalogów przy użyciu polecenia cmdlet Pop-Location
.
Na przykład program PowerShell zwykle uruchamia się w katalogu głównym użytkownika.
Get-Location
Path
----
C:\Documents and Settings\PowerUser
Uwaga
Słowo stack ma specjalne znaczenie w wielu ustawieniach programowania, w tym .NET Framework. Podobnie jak fizyczny stos elementów, ostatni element umieszczony na stosie jest pierwszym elementem, który można ściągnąć ze stosu. Dodawanie elementu do stosu jest potocznie znane jako "wypychanie" elementu do stosu. Ściąganie elementu ze stosu jest potocznie znane jako „popowanie” elementu ze stosu.
Aby umieścić bieżącą lokalizację na stosie, a następnie przejść do folderu Ustawienia lokalne, wpisz:
Push-Location -Path "Local Settings"
Następnie możesz wypchnąć lokalizację Ustawienia lokalne do stosu i przejść do folderu Temp, wpisując:
Push-Location -Path Temp
Możesz sprawdzić, czy zmieniono katalogi, wprowadzając polecenie Get-Location
:
Get-Location
Path
----
C:\Documents and Settings\PowerUser\Local Settings\Temp
Następnie możesz wrócić do ostatnio odwiedzonego katalogu, wprowadzając polecenie Pop-Location
i weryfikując zmianę, wprowadzając polecenie Get-Location
:
Pop-Location
Get-Location
Path
----
C:\Documents and Settings\me\Local Settings
Podobnie jak w przypadku polecenia cmdlet Set-Location
można dołączyć parametr PassThru podczas wprowadzania polecenia cmdlet Pop-Location
, aby wyświetlić wprowadzony katalog:
Pop-Location -PassThru
Path
----
C:\Documents and Settings\PowerUser
Możesz również użyć poleceń cmdlet Location ze ścieżkami sieciowymi. Jeśli masz serwer o nazwie FS01 z udziałem o nazwie Public, możesz zmienić lokalizację, wpisując
Set-Location \\FS01\Public
lub
Push-Location \\FS01\Public
Możesz użyć poleceń Push-Location
i Set-Location
, aby zmienić lokalizację na dowolny dostępny dysk. Jeśli na przykład masz lokalny dysk CD-ROM z literą dysku D zawierającą dysk CD danych, możesz zmienić lokalizację na dysk CD, wprowadzając polecenie Set-Location D:
.
Jeśli dysk jest pusty, zostanie wyświetlony następujący komunikat o błędzie:
Set-Location D:
Set-Location : Cannot find path 'D:\' because it does not exist.
Jeśli używasz interfejsu wiersza polecenia, nie jest wygodne, aby użyć Eksploratora plików do zbadania dostępnych dysków fizycznych. Ponadto Eksplorator plików nie wyświetli wszystkich dysków programu PowerShell. Program PowerShell udostępnia zestaw poleceń do manipulowania dyskami PowerShell.