Join-Path
Kombinerar en sökväg och en underordnad sökväg till en enda sökväg.
Syntax
Join-Path
[-Path] <String[]>
[-ChildPath] <String>
[[-AdditionalChildPath] <String[]>]
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Description
Cmdleten Join-Path
kombinerar en sökväg och en underordnad sökväg till en enda sökväg.
Providern tillhandahåller sökvägsavgränsarna.
Exempel
Exempel 1: Kombinera en sökväg med en underordnad sökväg
PS C:\> Join-Path -Path "path" -ChildPath "childpath"
path\childpath
Det här kommandot använder Join-Path
för att kombinera en sökväg med en underordnad sökväg.
Eftersom kommandot körs från providern FileSystem
tillhandahåller det avgränsaren \
för att ansluta sökvägarna.
Exempel 2: Kombinera sökvägar som redan innehåller katalogavgränsare
PS C:\> Join-Path -Path "path\" -ChildPath "\childpath"
path\childpath
Befintliga katalogavgränsare \
hanteras så att det bara finns en avgränsare mellan Path
och ChildPath
Exempel 3: Visa filer och mappar genom att ansluta en sökväg till en underordnad sökväg
Join-Path "C:\win*" "System*" -Resolve
Det här kommandot visar de filer och mappar som refereras genom att ansluta C:\Win\*
sökvägen och den System\*
underordnade sökvägen. Den visar samma filer och mappar som Get-ChildItem
, men visar den fullständigt kvalificerade sökvägen till varje objekt. I det här kommandot utelämnas de valfria parameternamnen Path
och ChildPath
.
Exempel 4: Använd Join-Path med PowerShell-registerprovidern
PS HKLM:\> Join-Path -Path System -ChildPath *ControlSet* -Resolve
HKLM:\System\ControlSet001
HKLM:\System\CurrentControlSet
Det här kommandot visar registernycklarna i registerundernyckeln HKLM\System
som innehåller ControlSet
.
Parametern Resolve
försöker matcha den anslutna sökvägen, inklusive jokertecken från den aktuella providersökvägen HKLM:\
Exempel 5: Kombinera flera sökvägsrötter med en underordnad sökväg
Join-Path -Path C:, D:, E:, F: -ChildPath New
C:\New
D:\New
E:\New
F:\New
Det här kommandot använder Join-Path
för att kombinera flera sökvägsrötter med en underordnad sökväg.
Kommentar
De enheter som anges av Path
måste finnas, annars misslyckas anslutningen till den posten.
Exempel 6: Kombinera rötterna för en filsystemenhet med en underordnad sökväg
Get-PSDrive -PSProvider filesystem | ForEach-Object {$_.root} | Join-Path -ChildPath "Subdir"
C:\Subdir
D:\Subdir
Det här kommandot kombinerar rötterna för varje PowerShell-filsystemenhet i konsolen med den Subdir
underordnade sökvägen.
Kommandot använder cmdleten Get-PSDrive
för att hämta PowerShell-enheter som stöds av FileSystem-providern. Instruktionen ForEach-Object
väljer endast rotegenskapen för PSDriveInfo-objekten och kombinerar den med den angivna underordnade sökvägen.
Utdata visar att PowerShell-enheterna på datorn inkluderade en enhet som mappats till C:\Program Files
katalogen.
Exempel 7: Kombinera ett obegränsat antal sökvägar
Join-Path a b c d e f g
a\b\c\d\e\f\g
Parametern AdditionalChildPath
tillåter sammanfogning av ett obegränsat antal sökvägar.
I det här exemplet används inga parameternamn, vilket innebär att "a" binder till Path
, "b" till ChildPath
och "c-g" till AdditionalChildPath
Parametrar
-AdditionalChildPath
Anger ytterligare element som ska läggas till i värdet för parametern Path . Parametern ChildPath
är fortfarande obligatorisk och måste också anges.
Den här parametern anges med egenskapen ValueFromRemainingArguments
som gör det möjligt att ansluta ett obegränsat antal sökvägar.
Den här parametern lades till i PowerShell 6.0.
Typ: | String[] |
Position: | 2 |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-ChildPath
Anger de element som ska läggas till i värdet för parametern Path
. Jokertecken tillåts. Parametern ChildPath
krävs, även om parameternamnet ("ChildPath") är valfritt.
Typ: | String |
Position: | 1 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | True |
-Credential
Kommentar
Den här parametern stöds inte av några leverantörer som är installerade med PowerShell. Om du vill personifiera en annan användare eller höja dina autentiseringsuppgifter när du kör den här cmdleten använder du Invoke-Command.
Typ: | PSCredential |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | False |
-Path
Anger den huvudsökväg (eller sökvägar) som den underordnade sökvägen läggs till i. Jokertecken tillåts.
Värdet för Path
avgör vilken provider som ansluter sökvägarna och lägger till sökvägsavgränsarna.
Parametern Path
krävs, även om parameternamnet ("Sökväg") är valfritt.
Typ: | String[] |
Alias: | PSPath |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | True |
Godkänn jokertecken: | True |
-Resolve
Anger att denna cmdlet ska försöka matcha den anslutna sökvägen från den aktuella providern.
- Om jokertecken används returnerar cmdleten alla sökvägar som matchar den anslutna sökvägen.
- Om inga jokertecken används felar cmdleten om sökvägen inte finns.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
Du kan skicka en sträng som innehåller en sökväg till den här cmdleten.
Utdata
Den här cmdleten returnerar en sträng som innehåller den resulterande sökvägen.
Kommentarer
De cmdletar som innehåller path-substantivet (sökvägs-cmdletar) manipulerar sökvägsnamn och returnerar namnen i ett kortfattat format som alla PowerShell-leverantörer kan tolka. De är utformade för användning i program och skript där du vill visa hela eller en del av ett sökvägsnamn i ett visst format.
Använd dem som om du skulle använda Dirname
, Normpath
, Realpath
, Join
eller andra sökvägsmanipulatörer.
Du kan använda sökvägs-cmdletar med flera leverantörer, inklusive FileSystem
, Registry
och Certificate
providers.
Den här cmdleten är utformad för att fungera med data som exponeras av alla leverantörer. Om du vill visa en lista över tillgängliga leverantörer i sessionen skriver du Get-PSProvider
. Mer information finns i about_Providers.