Správa aktuálního umístění

Při procházení systémů složek v Průzkumník souborů máte obvykle konkrétní pracovní umístění – konkrétně aktuální otevřenou složku. Položky v aktuální složce lze snadno manipulovat kliknutím na ně. Pro rozhraní příkazového řádku, jako je Cmd.exe, když jste ve stejné složce jako konkrétní soubor, můžete k němu přistupovat zadáním relativně krátkého názvu, a nemusíte zadávat celou cestu k souboru. Aktuální adresář se nazývá pracovní adresář.

PowerShell používá umístění podstatných jmen k odkazování na pracovní adresář a implementuje řadu rutin k prozkoumání a manipulaci s vaším umístěním.

Získání aktuálního umístění (Get-Location)

Pokud chcete určit cestu k aktuálnímu umístění adresáře, zadejte Get-Location příkaz:

Get-Location
Path
----
C:\Documents and Settings\PowerUser

Poznámka:

Rutina Get-Location se podobá příkazu pwd v prostředí BASH. Rutina Set-Location se podobá příkazu cd v Cmd.exe.

Nastavení aktuálního umístění (Nastavení umístění)

Příkaz Get-Location se použije s příkazem Set-Location . Příkaz Set-Location umožňuje zadat aktuální umístění adresáře.

Set-Location -Path C:\Windows

Po zadání příkazu si všimněte, že neobdržíte žádnou přímou zpětnou vazbu k účinku příkazu. Většina příkazů PowerShellu, které provádějí akci, vytváří malý nebo žádný výstup, protože výstup není vždy užitečný. Pokud chcete ověřit, že při zadávání Set-Location příkazu došlo k úspěšné změně adresáře, při zadávání Set-Location příkazu zahrňte parametr PassThru:

Set-Location -Path C:\Windows -PassThru
Path
----
C:\WINDOWS

Parametr PassThru lze použít s mnoha příkazy Set v PowerShellu k vrácení informací o výsledku pro případy, kdy neexistuje výchozí výstup.

Cesty vzhledem k aktuálnímu umístění můžete zadat stejným způsobem jako ve většině systém UNIX a příkazového prostředí Windows. Ve standardním zápisu relativních cest představuje tečka (.) vaši aktuální složku a dvojitá tečka (..) představuje nadřazený adresář aktuálního umístění.

Pokud jste například ve C:\Windows složce, představuje C:\Windows tečka (.) a dvojitá tečka (..) představuje C:. Zadáním následujícího příkazu můžete přejít z aktuálního C: umístění na kořen jednotky:

Set-Location -Path .. -PassThru
Path
----
C:\

Stejná technika funguje na jednotkách PowerShellu, které nejsou jednotkami systému souborů, například HKLM:. Umístění můžete nastavit na HKLM\Software klíč v registru zadáním:

Set-Location -Path HKLM:\SOFTWARE -PassThru
Path
----
HKLM:\SOFTWARE

Umístění adresáře pak můžete změnit na nadřazený adresář pomocí relativní cesty:

Set-Location -Path .. -PassThru
Path
----
HKLM:\

Můžete zadat Set-Location nebo použít některý z předdefinovaných aliasů PowerShellu pro Set-Location (cd, chdir, sl). Příklad:

cd -Path C:\Windows
chdir -Path .. -PassThru
sl -Path HKLM:\SOFTWARE -PassThru

Ukládání a odvolávání nedávných umístění (Push-Location a Pop-Location)

Při změně umístění je užitečné sledovat, kde jste byli, a vrátit se k předchozímu umístění. Rutina Push-Location v PowerShellu vytvoří uspořádanou historii (zásobník) cest k adresářům, kde jste byli, a pomocí rutiny můžete procházet historii cest Pop-Location adresářů.

PowerShell například obvykle začíná v domovském adresáři uživatele.

Get-Location

Path
----
C:\Documents and Settings\PowerUser

Poznámka:

Zásobník slov má zvláštní význam v mnoha nastaveních programování, včetně rozhraní .NET Framework. Stejně jako fyzický zásobník položek je poslední položka, kterou do zásobníku vložíte, první položkou, kterou můžete ze zásobníku stáhnout. Přidání položky do zásobníku se označuje jako "nasdílením" položky do zásobníku. Stažení položky ze zásobníku se označuje jako "skákání" položky ze zásobníku.

Chcete-li odeslat aktuální umístění do zásobníku a pak přejděte do místní Nastavení složky, zadejte:

Push-Location -Path "Local Settings"

Místní Nastavení umístění pak můžete nasdílit do zásobníku a přejít do dočasné složky zadáním:

Push-Location -Path Temp

Zadáním příkazu můžete ověřit, že jste změnili Get-Location adresáře:

Get-Location
Path
----
C:\Documents and Settings\PowerUser\Local Settings\Temp

Pak se můžete vrátit zpět do naposledy navštíveného adresáře Pop-Location zadáním příkazu a ověřit změnu zadáním Get-Location příkazu:

Pop-Location
Get-Location
Path
----
C:\Documents and Settings\me\Local Settings

Stejně jako u Set-Location rutiny můžete při zadávání Pop-Location rutiny zahrnout parametr PassThru, aby se zobrazil zadaný adresář:

Pop-Location -PassThru
Path
----
C:\Documents and Settings\PowerUser

Můžete také použít rutiny location se síťovými cestami. Pokud máte server s názvem FS01 se sdílenou složkou s názvem Veřejný, můžete umístění změnit zadáním

Set-Location \\FS01\Public

nebo

Push-Location \\FS01\Public

Pomocí příkazů Push-Location a Set-Location příkazů můžete změnit umístění na libovolnou dostupnou jednotku. Pokud máte například místní jednotku CD-ROM s písmenem D obsahujícím datový disk CD, můžete umístění změnit na jednotku Set-Location D: CD zadáním příkazu.

Pokud je jednotka prázdná, zobrazí se následující chybová zpráva:

Set-Location D:
Set-Location : Cannot find path 'D:\' because it does not exist.

Pokud používáte rozhraní příkazového řádku, není vhodné použít Průzkumník souborů k prozkoumání dostupných fyzických jednotek. Průzkumník souborů by také nezobrazovat všechny jednotky PowerShellu. PowerShell poskytuje sadu příkazů pro manipulaci s jednotkami PowerShellu.