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.