Ce face Set-Location
Set-Location schimbă locația curentă: un folder, dar și o cale din alt provider, de exemplu HKLM:\ sau Env:\. Aliasurile sunt cd, chdir și sl. Fără cale, te duce în folderul personal al utilizatorului. Comanda nu afișează nimic; cu -PassThru întoarce noua locație.
Get-Location (aliasuri pwd și gl) întoarce locația curentă ca obiect PathInfo. Din PowerShell 6.2, Set-Location - te întoarce la locația anterioară și Set-Location + merge înainte în istoric; PowerShell ține minte ultimele 20 de locații.
Push-Location (alias pushd) pune locația curentă pe o stivă și, dacă îi dai o cale, te mută acolo. Pop-Location (alias popd) scoate ultima locație de pe stivă și te întoarce în ea. Perechea e utilă în scripturi care lucrează temporar în alt folder.
Parametri
| Parametru | Descriere |
|---|---|
-Path |
Noua locație. Poate fi relativă (.., facturi), absolută sau - / + pentru istoric (din 6.2). |
-LiteralPath |
Calea folosită exact cum e scrisă, fără wildcard-uri. |
-PassThru |
Întoarce un obiect PathInfo cu noua locație. |
-StackName |
La Push-Location / Pop-Location: lucrează cu o stivă numită în loc de cea implicită. |
Get-Location -Stack |
Afișează locațiile salvate pe stiva curentă. |
Ce returnează
Set-Location, Push-Location și Pop-Location nu întorc nimic implicit (un PathInfo cu -PassThru); Get-Location întoarce un PathInfo.
Exemple
Exemplul 1: Intră într-un folder și verifică unde ești
Set-Location nu afișează nimic; Get-Location confirmă locația curentă.
Set-Location -Path C:\Proiecte\facturi
Get-Location
Ieșire în terminal
Path
----
C:\Proiecte\facturi
Exemplul 2: Înapoi la locația anterioară cu cd –
Din PowerShell 6.2, cd – (adică Set-Location -Path -) te întoarce unde erai înainte, ca în Bash.
cd C:\Proiecte
cd facturi
cd -
Get-Location
Ieșire în terminal
Path
----
C:\Proiecte
Exemplul 3: Lucru temporar în alt folder cu Push-Location și Pop-Location
Push-Location ține minte folderul de facturi, Pop-Location te readuce în el după ce ai terminat în C:\Windows\Temp.
Set-Location C:\Proiecte\facturi
Push-Location C:\Windows\Temp
Get-Location
Pop-Location
Get-Location
Ieșire în terminal
Path
----
C:\Windows\Temp
Path
----
C:\Proiecte\facturi
Greșeli frecvente
- Căile cu spații trebuie puse între ghilimele:
Set-Location 'C:\Proiecte\Cafenea Iași'. Fără ghilimele, PowerShell vede două argumente și dă eroare. - În scripturi,
cdschimbă locația sesiunii PowerShell, dar nu și[System.Environment]::CurrentDirectoryfolosit de metodele .NET. Dă căi complete metodelor .NET (de exemplu(Resolve-Path .\note.txt).Path). - Pe macOS și Linux căile țin cont de majuscule:
cd ~/proiecteșicd ~/Proiectesunt foldere diferite.
Comenzi înrudite
Get-ChildItem: Listează fișierele și folderele dintr-o locație, opțional recursiv, filtrate după nume sau tip (echivalentul lui dir și ls).Test-Path: Verifică dacă o cale există și întoarce True sau False; poate cere să fie fișier sau folder și să fie mai nouă decât o dată.New-Item: Creează un fișier, un folder sau un link; poate pune și conținut inițial în fișierul nou.Comenzi CMD și echivalentul PowerShell: Ce folosești în PowerShell în locul comenzilor CMD obișnuite (dir, cd, copy, del, ipconfig, ping, tasklist, taskkill, set).PowerShell pe macOS și Linux: Cum instalezi și pornești PowerShell 7 (pwsh) pe macOS și Linux și ce se comportă diferit față de Windows: aliasuri, majuscule, căi.