Resolve-Path
Menyelesaikan karakter kartubebas dalam jalur, dan menampilkan konten jalur.
Sintaks
Resolve-Path
[-Path] <string[]>
[-Relative]
[-RelativeBasePath <string>]
[-Credential <pscredential>]
[-Force]
[<CommonParameters>]
Resolve-Path
-LiteralPath <string[]>
[-Relative]
[-RelativeBasePath <string>]
[-Credential <pscredential>]
[-Force]
[<CommonParameters>]
Deskripsi
Resolve-Path
Cmdlet menampilkan item dan kontainer yang cocok dengan pola wildcard di lokasi yang ditentukan. Kecocokan dapat mencakup file, folder, kunci registri, atau objek lain yang dapat diakses dari penyedia PSDrive .
Contoh
Contoh 1: Mengatasi jalur folder utama
Karakter tilde (~
) adalah notasi singkat untuk folder utama pengguna saat ini. Contoh ini menunjukkan Resolve-Path
mengembalikan nilai jalur yang sepenuhnya memenuhi syarat.
Resolve-Path ~
Path
----
C:\Users\User01
Contoh 2: Mengatasi jalur folder Windows
Resolve-Path -Path "windows"
Path
----
C:\Windows
Saat dijalankan dari akar C:
drive, perintah ini mengembalikan jalur Windows
folder di C:
drive.
Contoh 3: Dapatkan semua jalur di folder Windows
"C:\windows\*" | Resolve-Path
Perintah ini mengembalikan semua file dan folder dalam C:\Windows
folder. Perintah menggunakan operator alur (|
) untuk mengirim string jalur ke Resolve-Path
.
Contoh 4: Mengatasi jalur UNC
Resolve-Path -Path "\\Server01\public"
Perintah ini menyelesaikan jalur Universal Naming Convention (UNC) dan mengembalikan berbagi di jalur .
Contoh 5: Mendapatkan jalur relatif
Resolve-Path -Path "c:\prog*" -Relative
.\Program Files
.\Program Files (x86)
.\programs.txt
Perintah ini mengembalikan jalur relatif untuk direktori di akar C:
drive.
Contoh 6: Mengatasi jalur yang berisi tanda kurung siku
Contoh ini menggunakan parameter LiteralPath untuk menyelesaikan jalur Test[xml]
subfolder.
Menggunakan LiteralPath menyebabkan tanda kurung diperlakukan sebagai karakter normal daripada ekspresi reguler.
Resolve-Path -LiteralPath 'test[xml]'
Contoh 7: Mengatasi jalur relatif terhadap folder lain
Contoh ini menggunakan parameter RelativeBasePath untuk menyelesaikan jalur yang dapat dieksekusi pwsh
relatif terhadap $env:TEMP
. Saat perintah menyertakan parameter sakelar Relatif, perintah mengembalikan String yang mewakili jalur relatif dari $env:TEMP
ke yang dapat dieksekusipwsh
.
$ExecutablePath = Get-Command -Name pwsh | Select-Object -ExpandProperty Source
Resolve-Path -Path $ExecutablePath -RelativeBasePath $env:TEMP -Relative
..\..\..\..\..\Program Files\PowerShell\7\pwsh.exe
Contoh 8: Mengatasi jalur untuk item tersembunyi
Secara default, Resolve-Path
tidak mengembalikan item tersembunyi. Contoh ini menggunakan parameter Paksa untuk mengatasi item tersembunyi. Perintah Get-Item
mengonfirmasi bahwa .git
folder disembunyikan. Menggunakan Resolve-Path
tanpa parameter Force hanya mengembalikan item yang terlihat.
Menambahkan parameter Force mengembalikan semua item, termasuk item tersembunyi.
PS> Get-Item .git -Force
Directory: D:\Git\PS-Docs\PowerShell-Docs
Mode LastWriteTime Length Name
---- ------------- ------ ----
d--h- 9/25/2024 4:46 PM .git
PS> Resolve-Path .git*
Path
----
D:\Git\PS-Docs\PowerShell-Docs\.github
D:\Git\PS-Docs\PowerShell-Docs\.gitattributes
D:\Git\PS-Docs\PowerShell-Docs\.gitignore
PS> Resolve-Path .git* -Force
Path
----
D:\Git\PS-Docs\PowerShell-Docs\.git
D:\Git\PS-Docs\PowerShell-Docs\.github
D:\Git\PS-Docs\PowerShell-Docs\.gitattributes
D:\Git\PS-Docs\PowerShell-Docs\.gitignore
Parameter
-Credential
Menentukan akun pengguna yang memiliki izin untuk melakukan tindakan ini. Defaultnya adalah pengguna saat ini.
Ketik nama pengguna, seperti User01
atau Domain01\User01
, atau berikan objek PSCredential . Anda dapat membuat objek PSCredential menggunakan Get-Credential
cmdlet. Jika Anda mengetik nama pengguna, cmdlet ini akan meminta kata sandi kepada Anda.
Parameter ini tidak didukung oleh penyedia apa pun yang diinstal dengan PowerShell.
Jenis: | PSCredential |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Force
Memungkinkan cmdlet untuk mendapatkan item yang sebaliknya tidak dapat diakses oleh pengguna, seperti file tersembunyi atau sistem. Parameter Force tidak mengambil alih pembatasan keamanan. Implementasi bervariasi di antara penyedia. Untuk informasi selengkapnya, lihat about_Providers.
Parameter ini ditambahkan di PowerShell 7.5-preview.5.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-LiteralPath
Menentukan jalur yang akan diselesaikan. Nilai parameter LiteralPath digunakan persis seperti yang ditik. Tidak ada karakter yang ditafsirkan sebagai karakter kartubebas. Jika jalur menyertakan karakter escape, sertakan dalam tanda kutip tunggal ('
). Tanda kutip tunggal memberi tahu PowerShell untuk tidak menginterpretasikan karakter apa pun sebagai urutan escape.
Jenis: | String[] |
Alias: | PSPath, LP |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Path
Menentukan jalur PowerShell untuk diselesaikan. Parameter ini diperlukan. Anda juga dapat menyalurkan string jalur ke Resolve-Path
. Karakter kartubebas diizinkan.
Jenis: | String[] |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | True |
-Relative
Menunjukkan bahwa cmdlet ini mengembalikan jalur relatif.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-RelativeBasePath
Menentukan jalur untuk menyelesaikan jalur relatif. Saat Anda menggunakan parameter ini, cmdlet mengembalikan objek System.Management.Automation.PathInfo untuk jalur yang diselesaikan.
Saat Anda menggunakan parameter ini dengan parameter Sakelar Relatif , cmdlet mengembalikan string yang mewakili jalur relatif dari RelativeBasePath ke Jalur.
Parameter ini ditambahkan di PowerShell 7.4.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
Input
Anda dapat menyalurkan string yang berisi jalur ke cmdlet ini.
Output
Secara default, cmdlet ini mengembalikan objek PathInfo .
Jika Anda menentukan parameter Relatif , cmdlet ini mengembalikan nilai string untuk jalur yang diselesaikan.
Catatan
PowerShell menyertakan alias berikut untuk Resolve-Path
:
- Semua platform:
rvpa
*-Path
Cmdlet berfungsi dengan penyedia FileSystem, Registry, dan Sertifikat.
Resolve-Path
dirancang untuk bekerja dengan penyedia apa pun. Untuk mencantumkan penyedia yang tersedia di sesi Anda, ketik Get-PSProvider
. Untuk informasi selengkapnya, lihat about_Providers.
Resolve-Path
hanya menyelesaikan jalur yang ada. Ini tidak dapat digunakan untuk mengatasi lokasi yang belum ada.