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 Join-Path
cmdlet łą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ą
PS C:\> Join-Path -Path "path" -ChildPath "childpath"
path\childpath
To polecenie służy Join-Path
do łączenia ścieżki ze ścieżką podrzędną.
Ponieważ polecenie jest wykonywane z FileSystem
dostawcy, udostępnia \
ogranicznik do przyłączenia ścieżek.
Przykład 2. Łączenie ścieżek, które już zawierają separatory katalogów
PS C:\> 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
i ChildPath
Przykład 3. Wyświetlanie plików i folderów przez dołączenie ścieżki ze ścieżką podrzędną
Join-Path "C:\win*" "System*" -Resolve
To polecenie wyświetla pliki i foldery, do których odwołuje się dołączenie C:\Win\*
ścieżki i ścieżki podrzędnej 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 Path
pominięto i ChildPath
opcjonalne nazwy parametrów.
Przykład 4. Używanie ścieżki sprzężenia 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 HKLM\System
rejestru, który zawiera ControlSet
.
Parametr Resolve
próbuje rozpoznać ścieżkę sprzężoną, 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 służy Join-Path
do łączenia wielu katalogów głównych ścieżki ze ścieżką podrzędną.
Uwaga
Dyski określone przez Path
muszą istnieć lub sprzężenia 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łównych każdego dysku systemu plików programu PowerShell w konsoli ze ścieżką podrzędną Subdir
.
Polecenie używa Get-PSDrive
polecenia cmdlet do 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 C:\Program Files
katalog.
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, więc "a" wiąże się z Path
, "b" z i "c-g" do ChildPath
AdditionalChildPath
Parametry
-AdditionalChildPath
Określa dodatkowe elementy, które mają być dołączane do wartości parametru Path . Parametr ChildPath
jest nadal obowiązkowy i musi być również określony.
Ten parametr jest określony z właściwością ValueFromRemainingArguments
, która umożliwia dołączenie do 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
Uwaga
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 polecenia 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ść parametru 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 są używane symbole wieloznaczne, polecenie cmdlet zwraca wszystkie ścieżki zgodne ze ścieżką sprzężone.
- Jeśli nie są używane 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 potokować 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 skrót ścieżki (polecenia cmdlet ścieżki) manipulują nazwami ścieżek i zwracają nazwy w zwięzłym formacie, który mogą interpretować wszyscy 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 w taki sposób, jak używasz Dirname
, , Normpath
Realpath
, Join
lub innych manipulatorów ścieżek.
Możesz użyć poleceń cmdlet ścieżki z kilkoma dostawcami, w tym FileSystem
dostawcami , Registry
i Certificate
.
To polecenie 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.