Get-Location
Získá informace o aktuálním pracovním umístění nebo zásobníku umístění.
Syntax
Location (Výchozí)
Get-Location
[-PSProvider <String[]>]
[-PSDrive <String[]>]
[<CommonParameters>]
Stack
Get-Location
[-Stack]
[-StackName <String[]>]
[<CommonParameters>]
Description
Rutina Get-Location získá objekt, který představuje aktuální adresář, podobně jako příkaz tiskového pracovního adresáře (pwd).
Při přechodu mezi jednotkami PowerShellu zachová PowerShell vaše umístění na každé jednotce. Pomocí této rutiny můžete najít umístění na každé jednotce.
Tuto rutinu můžete použít k získání aktuálního adresáře za běhu a jeho použití ve funkcích a skriptech, například ve funkci, která zobrazuje aktuální adresář v příkazovém řádku PowerShellu.
Tuto rutinu můžete použít také k zobrazení umístění v zásobníku umístění. Další informace najdete v poznámkách a popisech parametrů Stack a Stack Name.
Příklady
Příklad 1: Zobrazení aktuálního umístění jednotky
Tento příkaz zobrazí vaše umístění na aktuální jednotce PowerShellu.
PS C:\Windows> Get-Location
Path
----
C:\Windows
Pokud jste například v adresáři Windows jednotky C:, zobrazí se cesta k danému adresáři.
Příklad 2: Zobrazení aktuálního umístění pro různé jednotky
Tento příklad ukazuje použití Get-Location k zobrazení aktuálního umístění na různých jednotkách PowerShellu.
Set-Location se používá ke změně umístění na několik různých cest na různých psDrivech.
PS C:\> Set-Location C:\Windows
PS C:\Windows> Set-Location HKLM:\Software\Microsoft
PS HKLM:\Software\Microsoft> Set-Location "HKCU:\Control Panel\Input Method"
PS HKCU:\Control Panel\Input Method> Get-Location -PSDrive C
Path
----
C:\Windows
PS HKCU:\Control Panel\Input Method> Get-Location -PSDrive HKLM
Path
----
HKLM:\Software\Microsoft
PS HKCU:\Control Panel\Input Method> Set-Location C:
PS C:\Windows> Get-Location -PSProvider Registry
Path
----
HKCU:\Control Panel\Input Method
Příklad 3: Získání umístění pomocí zásobníků
Tento příklad ukazuje, jak použít Stack a StackName parametry Get-Location k výpisu umístění v aktuálním zásobníku umístění a alternativních zásobníkech umístění.
Rutina Push-Location slouží ke změně na tři různá umístění. Třetí nasdílení změn používá jiný název zásobníku. Parametr StackGet-Location zobrazí obsah výchozího zásobníku. Parametr StackNameGet-Location zobrazí obsah zásobníku s názvem Stack2.
PS C:\> Push-Location C:\Windows
PS C:\Windows>Push-Location System32
PS C:\Windows\System32>Push-Location WindowsPowerShell -StackName Stack2
C:\Windows\System32\WindowsPowerShell>Get-Location -Stack
Path
----
C:\Windows
C:\
C:\Windows\System32\WindowsPowerShell>Get-Location -StackName Stack2
Path
----
C:\Windows\System32
Příklad 4: Přizpůsobení příkazového řádku PowerShellu
Tento příklad ukazuje, jak přizpůsobit příkazový řádek PowerShellu.
PS C:\>
function prompt { 'PowerShell: ' + (Get-Location) + '> '}
PowerShell: C:\>
Funkce, která definuje výzvu, obsahuje příkaz Get-Location, který se spustí při každém zobrazení výzvy v konzole.
Formát výchozí výzvy PowerShellu je definován speciální funkcí s názvem prompt. Výzvu můžete změnit v konzole vytvořením nové funkce s názvem prompt.
Pokud chcete zobrazit aktuální funkci příkazového řádku, zadejte následující příkaz: Get-Content Function:\prompt
Parametry
-PSDrive
Získá aktuální umístění v zadané jednotce PowerShellu.
Pokud jste například na jednotce Cert:, můžete pomocí tohoto parametru najít aktuální umístění na C: jednotce.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
Location
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-PSProvider
Získá aktuální umístění na jednotce podporované zadaným poskytovatelem PowerShellu. Pokud zadaný zprostředkovatel podporuje více než jednu jednotku, vrátí tato rutina umístění na naposledy přístupné jednotce.
Pokud jste například na jednotce C:, můžete pomocí tohoto parametru najít aktuální umístění na jednotkách poskytovatele registru PowerShellu.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
Location
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-Stack
Označuje, že tato rutina zobrazí umístění přidaná do aktuálního zásobníku umístění. Umístění do zásobníků můžete přidat pomocí rutiny Push-Location.
Pokud chcete zobrazit umístění v jiném zásobníku umístění, použijte parametr StackName. Informace o zásobníkech umístění najdete v Poznámky.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
Stack
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-StackName
Určuje pojmenované zásobníky umístění jako pole řetězců. Zadejte jeden nebo více názvů zásobníků umístění.
Pokud chcete zobrazit umístění v aktuálním zásobníku umístění, použijte parametr Stack. Pokud chcete vytvořit zásobník umístění jako aktuální zásobník umístění, použijte rutinu Set-Location.
Tato rutina nemůže zobrazit umístění v nepojmenovaném výchozím zásobníku, pokud se nejedná o aktuální zásobník.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
Stack
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
None
Do tohoto cmdletu nemůžete předávat objekty.
Výstupy
PathInfo
Ve výchozím nastavení vrátí tato rutina objekt PathInfo.
PathInfoStack
Pokud použijete parametry Stack nebo StackName, vrátí tato rutina objekt PathInfoStack.
Poznámky
PowerShell obsahuje následující aliasy pro Get-Location:
Všechny platformy:
glpwd
PowerShell podporuje více běžících prostorů na proces. Každý runspace má svůj vlastní aktuální adresář.
To není stejné jako [System.Environment]::CurrentDirectory. Toto chování může být problém při volání rozhraní .NET API nebo spouštění nativních aplikací bez poskytování explicitních cest k adresářům.
Rutina Get-Location vrátí aktuální adresář aktuálního prostředí Runspace PowerShellu.
Tato rutina je navržená tak, aby fungovala s daty vystavenými jakýmkoli poskytovatelem. Chcete-li zobrazit seznam zprostředkovatelů v relaci, zadejte Get-PSProvider. Pro více informací viz about_Providers.
Způsoby, jak PSProvider, PSDrive, Stacka StackName parametry interagují na poskytovateli. Některé kombinace způsobí chyby, například zadání jednotky i poskytovatele, který tuto jednotku nezpřístupňuje. Pokud nejsou zadány žádné parametry, vrátí tato rutina objekt PathInfo pro zprostředkovatele, který obsahuje aktuální pracovní umístění.
Zásobník je poslední první seznam, ve kterém je přístupná pouze naposledy přidaná položka. Položky přidáte do zásobníku v pořadí, v jakém je používáte, a pak je načtete pro použití v obráceném pořadí. PowerShell umožňuje ukládat umístění zprostředkovatelů do zásobníků umístění. PowerShell vytvoří nepojmenovaný výchozí zásobník umístění a můžete vytvořit několik pojmenovaných zásobníků umístění. Pokud nezadáte název zásobníku, PowerShell použije aktuální zásobník umístění. Ve výchozím nastavení je nepojmenované výchozí umístění aktuální zásobník umístění, ale ke změně aktuálního zásobníku umístění můžete použít rutinu Set-Location.
Ke správě zásobníků umístění použijte rutiny PowerShellu *-Location následujícím způsobem.
Pokud chcete přidat umístění do zásobníku umístění, použijte rutinu
Push-Location.Pokud chcete získat umístění ze zásobníku umístění, použijte rutinu
Pop-Location.Pokud chcete zobrazit umístění v aktuálním zásobníku umístění, použijte parametr Stack rutiny
Get-Location. Pokud chcete zobrazit umístění v pojmenovaném zásobníku umístění, použijte parametr StackName rutinyGet-Location.Pokud chcete vytvořit nový zásobník umístění, použijte parametr StackName rutiny
Push-Location. Pokud zadáte zásobník, který neexistuje,Push-Locationzásobník vytvoří.Pokud chcete vytvořit zásobník umístění jako aktuální zásobník umístění, použijte parametr StackName rutiny
Set-Location.
Výchozí zásobník nenaznačeného umístění je plně přístupný jenom v případech, kdy se jedná o aktuální zásobník umístění.
Pokud vytvoříte zásobník pojmenovaného umístění jako aktuální zásobník umístění, nebudete už moct použít rutiny Push-Location nebo Pop-Location k přidání nebo získání položek z výchozího zásobníku nebo použití této rutiny k zobrazení umístění v nepojmenovaném zásobníku. Pokud chcete, aby byl zásobník bez názvu aktuální, použijte parametr StackName rutiny Set-Location s hodnotou $null nebo prázdným řetězcem ("").