Get-Location

Geçerli çalışma konumu veya konum yığını hakkında bilgi alır.

Syntax

Get-Location
   [-PSProvider <String[]>]
   [-PSDrive <String[]>]
   [<CommonParameters>]
Get-Location
   [-Stack]
   [-StackName <String[]>]
   [<CommonParameters>]

Description

cmdlet'i Get-Location , print working directory (pwd) komutuna çok benzer şekilde geçerli dizini temsil eden bir nesnesi alır.

PowerShell sürücüleri arasında geçiş yaptığınızda, PowerShell her sürücüde konumunuzu korur. Her sürücüdeki konumunuzu bulmak için bu cmdlet'i kullanabilirsiniz.

Bu cmdlet'i, geçerli dizini çalışma zamanında almak ve PowerShell isteminde geçerli dizini görüntüleyen bir işlev gibi işlevlerde ve betiklerde kullanmak için kullanabilirsiniz.

Konum yığınındaki konumları görüntülemek için de bu cmdlet'i kullanabilirsiniz. Daha fazla bilgi için Bkz. Stack ve StackName parametrelerinin notları ve açıklamaları.

Örnekler

Örnek 1: Geçerli sürücü konumunuzu görüntüleme

Bu komut geçerli PowerShell sürücüsündeki konumunuzu görüntüler.

PS C:\Windows> Get-Location

Path
----
C:\Windows

Örneğin, sürücünün dizinindeyseniz WindowsC: , bu dizinin yolunu görüntüler.

Örnek 2: Farklı sürücüler için geçerli konumunuzu görüntüleme

Bu örnek, geçerli konumunuzu farklı PowerShell sürücülerinde görüntülemek için uygulamasının kullanımını Get-Location gösterir. Set-Location , konumu farklı PSDrive'larda birkaç farklı yola değiştirmek için kullanılır.

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

Örnek 3: Yığınları kullanarak konumları alma

Bu örnekte, geçerli konum yığınındaki ve alternatif konum yığınlarındaki konumları Get-Location listelemek için Stack ve StackName parametrelerinin nasıl kullanılacağı gösterilmektedir.

Push-Location cmdlet'i üç farklı konuma geçmek için kullanılır. Üçüncü gönderim farklı bir yığın adı kullanır. stackGet-Location parametresi, varsayılan yığının içeriğini görüntüler. stackName parametresi Get-Location adlı Stack2yığının içeriğini görüntüler.

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

Örnek 4: PowerShell istemini özelleştirme

Bu örnekte PowerShell isteminin nasıl özelleştirileceği gösterilmektedir.

PS C:\>
function prompt { 'PowerShell: ' + (Get-Location) + '> '}
PowerShell: C:\>

İstemi tanımlayan işlev, konsolunda komut istemi her görüntülendiğinde çalıştırılan bir Get-Location komut içerir.

Varsayılan PowerShell isteminin biçimi adlı promptözel bir işlev tarafından tanımlanır. adlı promptyeni bir işlev oluşturarak konsolunuzda istemi değiştirebilirsiniz.

Geçerli istem işlevini görmek için aşağıdaki komutu yazın: Get-Content Function:\prompt

Parametreler

-PSDrive

Belirtilen PowerShell sürücüsündeki geçerli konumu alır.

Örneğin, sürücüdeyseniz, sürücüdeki Cert: geçerli konumunuzu bulmak için bu parametreyi C: kullanabilirsiniz.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PSProvider

Belirtilen PowerShell sağlayıcısı tarafından desteklenen sürücüdeki geçerli konumu alır. Belirtilen sağlayıcı birden fazla sürücüyü destekliyorsa, bu cmdlet en son erişilen sürücüdeki konumu döndürür.

Örneğin, sürücüdeyseniz C: , PowerShell Kayıt Defteri sağlayıcısının sürücülerinde geçerli konumunuzu bulmak için bu parametreyi kullanabilirsiniz.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Stack

Bu cmdlet'in geçerli konum yığınına eklenen konumları görüntülediğini gösterir. cmdlet'ini kullanarak Push-Location yığınlara konum ekleyebilirsiniz.

Konumları farklı bir konum yığınında görüntülemek için StackName parametresini kullanın. Konum yığınları hakkında bilgi için bkz. Notlar.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StackName

Adlandırılmış konum yığınlarını dize dizisi olarak belirtir. Bir veya daha fazla konum yığını adı girin.

Geçerli konum yığınındaki konumları görüntülemek için Stack parametresini kullanın. Bir konum yığınını geçerli konum yığını yapmak için cmdlet'ini Set-Location kullanın.

Bu cmdlet, geçerli yığın olmadığı sürece adsız varsayılan yığındaki konumları görüntüleyemez.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Girişler

None

Nesneleri bu cmdlet'e yöneltemezsiniz.

Çıkışlar

PathInfo

Varsayılan olarak, bu cmdlet bir PathInfo nesnesi döndürür.

PathInfoStack

Stack veya StackName parametrelerini kullandığınızda, bu cmdlet bir PathInfoStack nesnesi döndürür.

Notlar

PowerShell, için Get-Locationaşağıdaki diğer adları içerir:

  • Tüm Platformlar:

    • gl
    • pwd

PowerShell, işlem başına birden çok çalışma alanı destekler. Her çalışma alanının kendi geçerli dizini vardır. Bu, ile [System.Environment]::CurrentDirectoryaynı değildir. Bu davranış, .NET API'lerini çağırırken veya açık dizin yolları sağlamadan yerel uygulamalar çalıştırırken bir sorun olabilir. Cmdlet, Get-Location geçerli PowerShell çalışma alanının geçerli dizinini döndürür.

Bu cmdlet, herhangi bir sağlayıcı tarafından kullanıma sunulan verilerle çalışacak şekilde tasarlanmıştır. Oturumunuzda sağlayıcıları listelemek için yazın Get-PSProvider. Daha fazla bilgi için bkz. about_Providers.

PSProvider, PSDrive, Stack ve StackName parametrelerinin etkileşim kurma yolları sağlayıcıya bağlıdır. Bazı birleşimler, hem bir sürücüyü hem de bu sürücüyü kullanıma sunmayan bir sağlayıcıyı belirtme gibi hatalara neden olur. Parametre belirtilmezse, bu cmdlet geçerli çalışma konumunu içeren sağlayıcının PathInfo nesnesini döndürür.

Yığın, yalnızca en son eklenen öğenin erişilebilir olduğu, son eklenen ilk çıkış listesidir. Öğeleri bir yığına kullandığınız sırayla ekler ve sonra bunları ters sırada kullanmak üzere alırsınız. PowerShell, sağlayıcı konumlarını konum yığınlarında depolamanıza olanak tanır. PowerShell adlandırılmamış bir varsayılan konum yığını oluşturur ve birden çok adlandırılmış konum yığını oluşturabilirsiniz. Bir yığın adı belirtmezseniz PowerShell geçerli konum yığınını kullanır. Varsayılan olarak, adlandırılmamış varsayılan konum geçerli konum yığınıdır, ancak geçerli konum yığınını Set-Location değiştirmek için cmdlet'ini kullanabilirsiniz.

Konum yığınlarını yönetmek için PowerShell *-Location cmdlet'lerini aşağıdaki gibi kullanın.

  • Konum yığınına konum eklemek için cmdlet'ini Push-Location kullanın.

  • Konum yığınından konum almak için cmdlet'ini Pop-Location kullanın.

  • Geçerli konum yığınındaki konumları görüntülemek için cmdlet'in Stack parametresini Get-Location kullanın. Konumları adlandırılmış bir konum yığınında görüntülemek için cmdlet'in StackName parametresini Get-Location kullanın.

  • Yeni bir konum yığını oluşturmak için cmdlet'in StackName parametresini Push-Location kullanın. Mevcut olmayan bir yığın belirtirseniz, Push-Location yığını oluşturur.

  • Bir konum yığınını geçerli konum yığını yapmak için cmdlet'in StackName parametresini Set-Location kullanın.

Adlandırılmamış varsayılan konum yığınına yalnızca geçerli konum yığını olduğunda tam olarak erişilebilir. Adlandırılmış bir konum yığınını geçerli konum yığını yaparsanız, artık Push-Location varsayılan yığından öğe eklemek veya almak için veya Pop-Location cmdlet'lerini kullanamaz ya da adsız yığındaki konumları görüntülemek için bu cmdlet'i kullanamazsınız. Adsız yığını geçerli yığın yapmak için cmdlet'in Set-LocationStackName parametresini değeriyle $null veya boş dizeyle ()"" kullanın.