Join-Path
Łączy ścieżkę i ścieżkę podrzędną w jedną ścieżkę.
Składnia
Join-Path
[-Path] <String[]>
[-ChildPath] <String>
[[-AdditionalChildPath] <String[]>]
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Opis
Polecenie cmdlet Join-Path
łączy ścieżkę i ścieżkę podrzędną w jedną ścieżkę.
Dostawca dostarcza ograniczniki ścieżki.
Przykłady
Przykład 1. Łączenie ścieżki ze ścieżką podrzędną
Join-Path -Path "path" -ChildPath "childpath"
path\childpath
To polecenie używa Join-Path
do łączenia ścieżki ze ścieżką podrzędną.
Ponieważ polecenie jest wykonywane z dostawcy FileSystem
, dostarcza ogranicznik \
do łączenia ścieżek.
Przykład 2. Łączenie ścieżek, które już zawierają separatory katalogów
Join-Path -Path "path\" -ChildPath "\childpath"
path\childpath
Istniejące separatory katalogów \
są obsługiwane, więc istnieje tylko jeden separator między Path
a ChildPath
Przykład 3. Wyświetlanie plików i folderów przez dołączenie ścieżki do ścieżki podrzędnej
Join-Path "C:\win*" "System*" -Resolve
To polecenie wyświetla pliki i foldery, które są wskazywane przez połączenie ścieżki C:\Win\*
ze ścieżką podrzędną System\*
. Wyświetla on te same pliki i foldery co Get-ChildItem
, ale wyświetla w pełni kwalifikowaną ścieżkę do każdego elementu. W tym poleceniu pominięto nazwy parametrów Path
i ChildPath
opcjonalnych.
Przykład 4. Używanie Join-Path z dostawcą rejestru programu PowerShell
PS HKLM:\> Join-Path -Path System -ChildPath *ControlSet* -Resolve
HKLM:\System\ControlSet001
HKLM:\System\CurrentControlSet
To polecenie wyświetla klucze rejestru w podkluczu rejestru HKLM\System
, które zawierają ControlSet
.
Parametr Resolve
próbuje rozpoznać ścieżkę przyłączoną, w tym symbole wieloznaczne z bieżącej ścieżki dostawcy HKLM:\
Przykład 5. Łączenie wielu katalogów głównych ścieżki ze ścieżką podrzędną
Join-Path -Path C:, D:, E:, F: -ChildPath New
C:\New
D:\New
E:\New
F:\New
To polecenie używa Join-Path
do kombinowania wielu korzeni ścieżek i ścieżki podrzędnej.
Nota
Dyski określone przez Path
muszą istnieć, w przeciwnym razie połączenie tego wpisu zakończy się niepowodzeniem.
Przykład 6. Łączenie katalogów głównych dysku systemu plików ze ścieżką podrzędną
Get-PSDrive -PSProvider filesystem | ForEach-Object {$_.Root} | Join-Path -ChildPath "Subdir"
C:\Subdir
D:\Subdir
To polecenie łączy katalogi główne każdego dysku systemu plików PowerShell z konsoli ze ścieżką podrzędną Subdir
.
Polecenie używa „cmdlet” Get-PSDrive
w celu pobrania dysków programu PowerShell obsługiwanych przez dostawcę Systemu plików. Instrukcja ForEach-Object
wybiera tylko właściwość Root obiektów PSDriveInfo i łączy ją z określoną ścieżką podrzędną.
Dane wyjściowe pokazują, że dyski programu PowerShell na komputerze zawierały dysk zamapowany na katalog C:\Program Files
.
Przykład 7. Łączenie nieokreślonej liczby ścieżek
Join-Path a b c d e f g
a\b\c\d\e\f\g
Parametr AdditionalChildPath
umożliwia łączenie nieograniczonej liczby ścieżek.
W tym przykładzie nie są używane żadne nazwy parametrów, dlatego "a" wiąże się z Path
, "b" z ChildPath
i "c-g" do AdditionalChildPath
Parametry
-AdditionalChildPath
Określa dodatkowe elementy dołączone do wartości parametru ścieżki . Parametr ChildPath
jest nadal obowiązkowy i należy również go określić.
Ten parametr jest określony z właściwością ValueFromRemainingArguments
, która umożliwia łączenie nieokreślonej liczby ścieżek.
Ten parametr został dodany w programie PowerShell 6.0.
Typ: | String[] |
Position: | 2 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-ChildPath
Określa elementy, które mają być dołączane do wartości parametru Path
. Dozwolone są symbole wieloznaczne. Parametr ChildPath
jest wymagany, chociaż nazwa parametru ("ChildPath") jest opcjonalna.
Typ: | String |
Position: | 1 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | True |
-Credential
Nota
Ten parametr nie jest obsługiwany przez żadnych dostawców zainstalowanych w programie PowerShell. Aby personifikować innego użytkownika lub podnieść poziom poświadczeń podczas uruchamiania tego polecenia cmdlet, użyj Invoke-Command.
Typ: | PSCredential |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Path
Określa ścieżkę główną (lub ścieżki), do której dołączana jest ścieżka podrzędna. Dozwolone są symbole wieloznaczne.
Wartość Path
określa, który dostawca łączy ścieżki i dodaje ograniczniki ścieżki.
Parametr Path
jest wymagany, chociaż nazwa parametru ("Ścieżka") jest opcjonalna.
Typ: | String[] |
Aliasy: | PSPath |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | True |
-Resolve
Wskazuje, że to polecenie cmdlet powinno podjąć próbę rozpoznania ścieżki dołączonej z bieżącego dostawcy.
- Jeśli używane są symbole wieloznaczne, polecenie cmdlet zwraca wszystkie ścieżki zgodne z połączoną ścieżką.
- Jeśli nie są używane żadne symbole wieloznaczne, polecenie cmdlet spowoduje błąd, jeśli ścieżka nie istnieje.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
Możesz przekierować ciąg zawierający ścieżkę do tego polecenia cmdlet.
Dane wyjściowe
To polecenie cmdlet zwraca ciąg zawierający wynikową ścieżkę.
Uwagi
Polecenia cmdlet zawierające rzeczownik Ścieżka (polecenia cmdlet dotyczące ścieżki) manipulują ścieżkami i zwracają je w zwięzłym formacie, który mogą interpretować wszystkie dostawcy programu PowerShell. Są one przeznaczone do użytku w programach i skryptach, w których chcesz wyświetlić całą lub część nazwy ścieżki w określonym formacie.
Użyj ich tak, jakby używać Dirname
, Normpath
, Realpath
, Join
lub innych manipulatorów ścieżek.
Polecenia cmdlet mogą być używane z wieloma dostawcami, w tym z dostawcami FileSystem
, Registry
i Certificate
.
Cmdlet jest przeznaczone do pracy z danymi udostępnianymi przez dowolnego dostawcę. Aby wyświetlić listę dostawców dostępnych w sesji, wpisz Get-PSProvider
. Aby uzyskać więcej informacji, zobacz about_Providers.