Udostępnij za pośrednictwem


Resolve-Path

Rozpoznaje symbole wieloznaczne w ścieżce i wyświetla zawartość ścieżki.

Składnia

Resolve-Path
       [-Path] <string[]>
       [-Relative]
       [-RelativeBasePath <string>]
       [-Credential <pscredential>]
       [<CommonParameters>]
Resolve-Path
       -LiteralPath <string[]>
       [-Relative]
       [-RelativeBasePath <string>]
       [-Credential <pscredential>]
       [<CommonParameters>]

Opis

Polecenie Resolve-Path cmdlet wyświetla elementy i kontenery zgodne ze wzorcem symboli wieloznacznych w określonej lokalizacji. Dopasowanie może obejmować pliki, foldery, klucze rejestru lub dowolny inny obiekt dostępny od dostawcy usługi PSDrive .

Przykłady

Przykład 1. Rozwiązywanie problemów ze ścieżką folderu głównego

Znak tyldy (~) jest skróconą notacją dla folderu macierzystego bieżącego użytkownika. W tym przykładzie pokazano Resolve-Path zwracanie w pełni kwalifikowanej wartości ścieżki.

Resolve-Path ~

Path
----
C:\Users\User01

Przykład 2: Rozwiązywanie ścieżki folderu systemu Windows

Resolve-Path -Path "windows"

Path
----
C:\Windows

Po uruchomieniu C: z katalogu głównego dysku to polecenie zwraca ścieżkę Windows folderu na C: dysku.

Przykład 3. Pobieranie wszystkich ścieżek w folderze systemu Windows

"C:\windows\*" | Resolve-Path

To polecenie zwraca wszystkie pliki i foldery w folderze C:\Windows . Polecenie używa operatora potoku (|), aby wysłać ciąg ścieżki do Resolve-Path.

Przykład 4. Rozwiązywanie problemu ze ścieżką UNC

Resolve-Path -Path "\\Server01\public"

To polecenie rozpoznaje ścieżkę Universal Naming Convention (UNC) i zwraca udziały w ścieżce.

Przykład 5. Pobieranie ścieżek względnych

Resolve-Path -Path "c:\prog*" -Relative

.\Program Files
.\Program Files (x86)
.\programs.txt

To polecenie zwraca ścieżki względne dla katalogów w katalogu głównym C: dysku.

Przykład 6. Rozwiązywanie problemu ze ścieżką zawierającą nawiasy kwadratowe

W tym przykładzie użyto parametru LiteralPath do rozpoznania ścieżki podfolderu Test[xml] . Użycie metody LiteralPath powoduje, że nawiasy są traktowane jako zwykłe znaki, a nie wyrażenie regularne.

Resolve-Path -LiteralPath 'test[xml]'

Przykład 7. Rozwiązywanie ścieżki względem innego folderu

W tym przykładzie użyto parametru RelativeBasePath , aby rozpoznać ścieżkę pwsh pliku wykonywalnego względem $env:TEMP. Gdy polecenie zawiera parametr przełącznika względnego, zwraca ciąg reprezentujący ścieżkę względną z $env:TEMP do pwsh pliku wykonywalnego.

$ExecutablePath = Get-Command -Name pwsh | Select-Object -ExpandProperty Source
Resolve-Path -Path $ExecutablePath -RelativeBasePath $env:TEMP -Relative

..\..\..\..\..\Program Files\PowerShell\7\pwsh.exe

Parametry

-Credential

Określa konto użytkownika, które ma uprawnienia do wykonania tej akcji. Wartość domyślna to użytkownik bieżący.

Wpisz nazwę użytkownika, taką jak User01 lub Domain01\User01, lub przekaż obiekt PSCredential . Obiekt PSCredential można utworzyć przy użyciu Get-Credential polecenia cmdlet . Jeśli wpiszesz nazwę użytkownika, to polecenie cmdlet wyświetli monit o podanie hasła.

Ten parametr nie jest obsługiwany przez żadnych dostawców zainstalowanych w programie PowerShell.

Typ:PSCredential
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-LiteralPath

Określa ścieżkę do rozwiązania. Wartość parametru LiteralPath jest używana dokładnie tak, jak typowana. Znaki nie są interpretowane jako symbole wieloznaczne. Jeśli ścieżka zawiera znaki ucieczki, należy ująć ją w znaki pojedynczego cudzysłowu ('). Pojedyncze znaki cudzysłowu informują program PowerShell, aby nie interpretował żadnych znaków jako sekwencji ucieczki.

Typ:String[]
Aliasy:PSPath, LP
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Path

Określa ścieżkę programu PowerShell do rozwiązania. Ten parametr jest wymagany. Możesz również przekazać ciąg ścieżki do Resolve-Path. Dozwolone są symbole wieloznaczne.

Typ:String[]
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:True

-Relative

Wskazuje, że to polecenie cmdlet zwraca ścieżkę względną.

Typ:SwitchParameter
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-RelativeBasePath

Określa ścieżkę do rozpoznania ścieżki względnej z. Jeśli używasz tego parametru, polecenie cmdlet zwraca obiekt System.Management.Automation.PathInfo dla rozpoznaną ścieżkę.

Jeśli używasz tego parametru z parametrem Przełącznik względny , polecenie cmdlet zwraca ciąg reprezentujący ścieżkę względną z Parametru RelativeBasePath do ścieżki.

Ten parametr został dodany w programie PowerShell 7.4.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

String

Możesz potokować ciąg zawierający ścieżkę do tego polecenia cmdlet.

Dane wyjściowe

PathInfo

Domyślnie to polecenie cmdlet zwraca obiekt PathInfo .

String

Jeśli określisz parametr Względny , to polecenie cmdlet zwróci wartość ciągu dla rozpoznanej ścieżki.

Uwagi

Program PowerShell zawiera następujące aliasy dla programu Resolve-Path:

  • Wszystkie platformy:
    • rvpa

Polecenia *-Path cmdlet współpracują z dostawcami systemów plików, rejestru i certyfikatów .

Resolve-Path jest przeznaczony do pracy z dowolnym dostawcą. Aby wyświetlić listę dostawców dostępnych w sesji, wpisz Get-PSProvider. Aby uzyskać więcej informacji, zobacz about_providers.

Resolve-Path rozpoznaje tylko istniejące ścieżki. Nie można jej użyć do rozpoznania lokalizacji, która jeszcze nie istnieje.