Share via


Set-Location

Geçerli çalışma konumunu belirtilen bir konuma ayarlar.

Syntax

Set-Location
   [[-Path] <String>]
   [-PassThru]
   [<CommonParameters>]
Set-Location
   -LiteralPath <String>
   [-PassThru]
   [<CommonParameters>]
Set-Location
   [-PassThru]
   [-StackName <String>]
   [<CommonParameters>]

Description

Cmdlet, Set-Location çalışma konumunu belirtilen bir konuma ayarlar. Bu konum bir dizin, alt dizin, kayıt defteri konumu veya herhangi bir sağlayıcı yolu olabilir.

PowerShell 6.2, Path parametresi için -değer olarak ve + desteği ekledi. PowerShell, ve +ile - erişilebilen son 20 konumun geçmişini tutar. Bu liste, StackName parametresi kullanılarak erişilen konum yığınından bağımsızdır.

Örnekler

Örnek 1: Geçerli konumu ayarlama

PS C:\> Set-Location -Path "HKLM:\"
PS HKLM:\>

Bu komut geçerli konumu sürücünün köküne HKLM: ayarlar.

Örnek 2: Geçerli konumu ayarlama ve bu konumu görüntüleme

PS C:\> Set-Location -Path "Env:\" -PassThru

Path
----
Env:\

PS Env:\>

Bu komut geçerli konumu sürücünün köküne Env: ayarlar. PowerShell'i konumu temsil eden bir PathInfo nesnesi döndürmeye yönlendirmek için PassThru parametresini Env:\ kullanır.

Örnek 3: Konumu C: sürücüsündeki geçerli konuma ayarlama

PS C:\Windows\> Set-Location HKLM:\
PS HKLM:\> Set-Location C:
PS C:\Windows\>

İlk komut, konumu Kayıt Defteri sağlayıcısındaki HKLM: sürücünün köküne ayarlar. İkinci komut, konumu FileSystem sağlayıcısındaki C: sürücünün geçerli konumuna ayarlar. Sürücü adı formda <DriveName>: (ters eğik çizgi olmadan) belirtildiğinde, cmdlet konumu PSDrive'daki geçerli konuma ayarlar. PSDrive'da geçerli konumu almak için komutunu kullanın Get-Location -PSDrive <DriveName> .

Örnek 4: Geçerli konumu adlandırılmış yığın olarak ayarlama

PS C:\> Push-Location -Path 'C:\Program Files\PowerShell\' -StackName "Paths"
PS C:\Program Files\PowerShell\> Set-Location -StackName "Paths"
PS C:\Program Files\PowerShell\> Get-Location -Stack

Path
----
C:\

İlk komut geçerli konumu Yollar yığınına ekler. İkinci komut, Yollar konum yığınını geçerli konum yığını yapar. Üçüncü komut geçerli konum yığınındaki konumları görüntüler.

Cmdlet'ler *-Location , komutta farklı bir konum yığını belirtilmediği sürece geçerli konum yığınını kullanır. Konum yığınları hakkında bilgi için bkz . Notlar.

Örnek 5: '+' veya '-' kullanarak konum geçmişinde gezinme

PS C:\> Set-Location -Path $env:SystemRoot
PS C:\Windows> Set-Location -Path Cert:\
PS Cert:\> Set-Location -Path HKLM:\
PS HKLM:\>

# Navigate back through the history using "-"
PS HKLM:\> Set-Location -Path -
PS Cert:\> Set-Location -Path -
PS C:\Windows>

# Navigate using the Set-Location alias "cd" and the implicit positional Path parameter
PS C:\Windows> cd -
PS C:\> cd +
PS C:\Windows> cd +
PS Cert:\>

Diğer adı cd - kullanmak veya cd + terminaldeyken konum geçmişinizde gezinmenin kolay bir yoludur. ile -/+gezinme hakkında daha fazla bilgi için Path parametresine bakın.

Parametreler

-LiteralPath

Konumun yolunu belirtir. LiteralPath parametresinin değeri tam olarak yazıldığı gibi kullanılır. Hiçbir karakter joker karakter olarak yorumlanmamıştır. Yol kaçış karakterleri içeriyorsa, tek tırnak içine alın. Tek tırnak işaretleri PowerShell'e hiçbir karakteri kaçış dizisi olarak yorumlamaması gerektiğini söyler.

Type:String
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Konumu temsil eden bir PathInfo nesnesi döndürür. Varsayılan olarak, bu cmdlet herhangi bir çıkış oluşturmaz.

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

-Path

Yeni bir çalışma konumunun yolunu belirtin. Yol sağlanmazsa, Set-Location varsayılan olarak geçerli kullanıcının giriş dizinine ayarlanır. Joker karakterler kullanıldığında, cmdlet joker karakter deseniyle eşleşen kapsayıcıyı (dizin, kayıt defteri anahtarı, sertifika deposu) seçer. Joker karakter deseni birden fazla kapsayıcıyla eşleşiyorsa, cmdlet bir hata döndürür.

PowerShell, ayarladığınız son 20 konumun geçmişini tutar. Path parametresi değeri karakterse-, yeni çalışma konumu geçmişteki önceki çalışma konumu olur (varsa). Benzer şekilde, değer + karakterse, yeni çalışma konumu geçmişteki bir sonraki çalışma konumu olur (varsa). Bu, ve Push-Location kullanımına Pop-Location benzer, ancak geçmişin yığın değil liste olması ve elle denetlenmemesi, örtük olarak izlenmesidir. Geçmiş listesini görüntülemenin hiçbir yolu yoktur.

Type:String
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:True

-StackName

Bu cmdlet'in geçerli konum yığınını yaptığı mevcut bir konum yığını adını belirtir. Konum yığını adı girin. Adsız varsayılan konum yığınını belirtmek için, yazın veya boş bir dize () yazın$null"".

Bu parametrenin kullanılması geçerli konumu değiştirmez. Yalnızca cmdlet'ler tarafından *-Location kullanılan yığını değiştirir. *-Location Farklı bir yığın belirtmek için StackName parametresini kullanmadığınız sürece cmdlet'ler geçerli yığın üzerinde hareket eder. Konum yığınları hakkında daha fazla bilgi için bkz . Notlar.

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

Girişler

String

Bu cmdlet'e yol içeren ancak değişmez yol içermeyen bir dizeyi kanala aktarabilirsiniz.

Çıkışlar

None

Varsayılan olarak, bu cmdlet çıkış döndürmez.

PathInfo

PassThru parametresini Path veya LiteralPath ile kullandığınızda, bu cmdlet yeni konumu temsil eden bir PathInfo nesnesi döndürür.

PathInfoStack

StackName ile PassThru parametresini kullandığınızda, bu cmdlet yeni yığın bağlamını temsil eden bir PathInfoStack nesnesi döndürür.

Notlar

PowerShell için aşağıdaki diğer adları Set-Locationiçerir:

  • Tüm Platformlar:
    • cd
    • chdir
    • sl

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ış, açık dizin yolları sağlamadan .NET API'lerini çağırırken veya yerel uygulamalar çalıştırırken sorun olabilir.

Konum cmdlet'leri işlem genelinde geçerli dizini ayarlamış olsa bile, başka bir çalışma alanı bunu istediği zaman değiştirebileceğinden buna bağımlı olamazsınız. Geçerli çalışma alanına özgü geçerli çalışma dizinini kullanarak yol tabanlı işlemler gerçekleştirmek için konum cmdlet'lerini kullanmalısınız.

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

Yığın, yalnızca en son eklenen öğeye erişilebilen son giriş ve ilk çıkış listesidir. Öğeleri kullandığınız sırayla bir yığına 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. 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, adsız 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 cmdlet'lerini *-Location 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 stackname parametresini Get-Locationkullanın.

  • Yeni bir konum yığını oluşturmak için stackName parametresini Push-Locationkullanı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 stackname parametresini Set-Locationkullanın.

Adsız 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 veya Pop-Location cmdlet'lerini kullanarak Push-Location varsayılan yığından öğe ekleyemez veya alamaz ya da cmdlet'ini kullanarak adsız yığındaki konumları görüntüleyemezsinizGet-Location. Adsız yığını geçerli yığın yapmak için cmdlet'in Set-Location StackName parametresini veya boş bir dize ()"" ile $null kullanın.