Join-Path
Kombiniert einen Pfad und einen untergeordneten Pfad zu einem Pfad.
Syntax
Join-Path
[-Path] <String[]>
[-ChildPath] <String>
[[-AdditionalChildPath] <String[]>]
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Beschreibung
Das Join-Path
Cmdlet kombiniert einen Pfad und einen untergeordneten Pfad in einem einzelnen Pfad.
Der Anbieter stellt die Pfadtrennzeichen bereit.
Beispiele
Beispiel 1: Kombinieren eines Pfads mit einem untergeordneten Pfad
PS C:\> Join-Path -Path "path" -ChildPath "childpath"
path\childpath
Mit diesem Befehl wird Join-Path
ein Pfad mit einem untergeordneten Pfad kombiniert.
Da der Befehl vom FileSystem
Anbieter ausgeführt wird, stellt er das \
Trennzeichen bereit, um die Pfade zu verbinden.
Beispiel 2: Kombinieren von Pfaden, die bereits Verzeichnistrennzeichen enthalten
PS C:\> Join-Path -Path "path\" -ChildPath "\childpath"
path\childpath
Vorhandene Verzeichnistrennzeichen \
werden behandelt, sodass nur ein Trennzeichen zwischen Path
und ChildPath
Beispiel 3: Anzeigen von Dateien und Ordnern durch Verknüpfen eines Pfads mit einem untergeordneten Pfad
Join-Path "C:\win*" "System*" -Resolve
Mit diesem Befehl werden die Dateien und Ordner angezeigt, auf die verwiesen wird, indem der C:\Win\*
Pfad und der System\*
untergeordnete Pfad hinzugefügt werden. Sie zeigt die gleichen Dateien und Ordner an wie Get-ChildItem
, zeigt jedoch den vollqualifizierten Pfad zu jedem Element an. In diesem Befehl werden die Namen und Path
ChildPath
optionalen Parameternamen weggelassen.
Beispiel 4: Verwenden des Join-Pfads mit dem PowerShell-Registrierungsanbieter
PS HKLM:\> Join-Path -Path System -ChildPath *ControlSet* -Resolve
HKLM:\System\ControlSet001
HKLM:\System\CurrentControlSet
Mit diesem Befehl werden die Registrierungsschlüssel im Registrierungsunterschlüssel angezeigt, der HKLM\System
enthalten ControlSet
ist.
Der Resolve
Parameter versucht, den verknüpften Pfad aufzulösen, einschließlich Wildcards aus dem aktuellen Anbieterpfad. HKLM:\
Beispiel 5: Kombinieren mehrerer Pfadwurzeln mit einem untergeordneten Pfad
Join-Path -Path C:, D:, E:, F: -ChildPath New
C:\New
D:\New
E:\New
F:\New
Mit diesem Befehl werden Join-Path
mehrere Pfadwurzeln mit einem untergeordneten Pfad kombiniert.
Hinweis
Die angegebenen Path
Laufwerke müssen vorhanden sein, oder die Verknüpfung dieses Eintrags schlägt fehl.
Beispiel 6: Kombinieren der Wurzeln eines Dateisystemlaufwerks mit einem untergeordneten Pfad
Get-PSDrive -PSProvider filesystem | ForEach-Object {$_.root} | Join-Path -ChildPath "Subdir"
C:\Subdir
D:\Subdir
Dieser Befehl kombiniert die Wurzeln jedes PowerShell-Dateisystemlaufwerks in der Konsole mit dem Subdir
untergeordneten Pfad.
Der Befehl verwendet das Get-PSDrive
Cmdlet, um die vom FileSystem-Anbieter unterstützten PowerShell-Laufwerke abzurufen. Die ForEach-Object
Anweisung wählt nur die Root-Eigenschaft der PSDriveInfo-Objekte aus und kombiniert sie mit dem angegebenen untergeordneten Pfad.
Die Ausgabe zeigt, dass die PowerShell-Laufwerke auf dem Computer ein Laufwerk enthalten, das dem C:\Program Files
Verzeichnis zugeordnet ist.
Beispiel 7: Kombinieren einer unbegrenzten Anzahl von Pfaden
Join-Path a b c d e f g
a\b\c\d\e\f\g
Der AdditionalChildPath
Parameter ermöglicht das Verknüpfen einer unbegrenzten Anzahl von Pfaden.
In diesem Beispiel werden keine Parameternamen verwendet, daher wird "a" an Path
, "b" an ChildPath
und "c-g" an AdditionalChildPath
Parameter
-AdditionalChildPath
Gibt zusätzliche Elemente an, die an den Wert des Path-Parameters angefügt werden sollen. Der ChildPath
Parameter ist weiterhin obligatorisch und muss ebenfalls angegeben werden.
Dieser Parameter wird mit der ValueFromRemainingArguments
Eigenschaft angegeben, die das Verknüpfen einer unbegrenzten Anzahl von Pfaden ermöglicht.
Dieser Parameter wurde in PowerShell 6.0 hinzugefügt.
Typ: | String[] |
Position: | 2 |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-ChildPath
Gibt die Elemente an, die an den Wert des Path
Parameters angefügt werden sollen. Platzhalter sind zulässig. Der ChildPath
Parameter ist erforderlich, obwohl der Parametername ("ChildPath") optional ist.
Typ: | String |
Position: | 1 |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | True |
-Credential
Hinweis
Dieser Parameter wird von anbietern, die mit PowerShell installiert sind, nicht unterstützt. Verwenden Sie "Invoke-Command", um die Identität eines anderen Benutzers zu imitieren oder Ihre Anmeldeinformationen beim Ausführen dieses Cmdlets zu erhöhen.
Typ: | PSCredential |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-Path
Gibt die Hauptpfade an, an die der untergeordnete Pfad angefügt wird. Platzhalter sind zulässig.
Der Wert von Path
bestimmt, welcher Anbieter die Pfade verknüpft und die Pfadtrennzeichen hinzufügt.
Der Path
Parameter ist erforderlich, obwohl der Parametername ("Path") optional ist.
Typ: | String[] |
Aliase: | PSPath |
Position: | 0 |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | True |
-Resolve
Gibt an, dass dieses Cmdlet versuchen soll, den verknüpften Pfad vom aktuellen Anbieter aufzulösen.
- Wenn Wildcards verwendet werden, gibt das Cmdlet alle Pfade zurück, die mit dem verknüpften Pfad übereinstimmen.
- Wenn keine Wildcards verwendet werden, tritt beim Cmdlet ein Fehler auf, wenn der Pfad nicht vorhanden ist.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
Sie können eine Zeichenfolge weiterleiten, die einen Pfad zu diesem Cmdlet enthält.
Ausgaben
Dieses Cmdlet gibt eine Zeichenfolge zurück, die den resultierenden Pfad enthält.
Hinweise
Die Cmdlets, die das Path-Substantiv (die Pfad-Cmdlets) enthalten, bearbeiten Pfadnamen und geben die Namen in einem präzisen Format zurück, das von allen PowerShell-Anbietern interpretiert werden kann. Diese können in Programmen und Skripts verwendet werden, in denen ein Pfadname vollständig oder teilweise in einem bestimmten Format angezeigt werden soll.
Verwenden Sie sie wie andere Dirname
Normpath
Realpath
Join
Pfadmanipulatoren.
Sie können die Pfad-Cmdlets mit mehreren Anbietern verwenden, einschließlich des FileSystem
, Registry
und Certificate
der Anbieter.
Dieses Cmdlet wurde entwickelt, um mit den Daten zu arbeiten, die von einem beliebigen Anbieter verfügbar gemacht werden. Geben Sie ein, um die in Ihrer Sitzung verfügbaren Anbieter auflisten zu können Get-PSProvider
. Weitere Informationen finden Sie unter about_Providers.