Join-Path
Kombiniert einen Pfad und einen untergeordneten Pfad in einen einzelnen Pfad.
Syntax
Join-Path
[-Path] <String[]>
[-ChildPath] <String>
[[-AdditionalChildPath] <String[]>]
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Beschreibung
Das Cmdlet Join-Path
kombiniert einen Pfad und einen untergeordneten Pfad in einem einzelnen Pfad.
Der Anbieter stellt die Pfadtrennzeichen zur Auswahl.
Beispiele
Beispiel 1: Kombinieren eines Pfads mit einem untergeordneten Pfad
Join-Path -Path "path" -ChildPath "childpath"
path\childpath
Dieser Befehl verwendet Join-Path
, um einen Pfad mit einem untergeordneten Pfad zu kombinieren.
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
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 sie den C:\Win\*
Pfad und den System\*
untergeordneten Pfad verknüpfen. Es zeigt die gleichen Dateien und Ordner wie Get-ChildItem
an, zeigt jedoch den vollqualifizierten Pfad zu jedem Element an. In diesem Befehl werden die Path
und ChildPath
optionalen Parameternamen weggelassen.
Beispiel 4: Verwenden von Join-Path 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 HKLM\System
Registrierungsunterschlüssel angezeigt, der ControlSet
enthält.
Der Resolve
-Parameter versucht, den verknüpften Pfad aufzulösen, einschließlich Der 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
Dieser Befehl verwendet Join-Path
, um mehrere Pfadwurzeln mit einem untergeordneten Pfad zu kombinieren.
Anmerkung
Die durch Path
angegebenen 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 Cmdlet Get-PSDrive
, um die vom FileSystem-Anbieter unterstützten PowerShell-Laufwerke abzurufen. Die ForEach-Object
-Anweisung wählt nur die eigenschaft Root 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 verzeichnis C:\Program Files
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 parameter AdditionalChildPath
ermöglicht die Verknüpfung 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 parameter ChildPath
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. Wildcards 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
Anmerkung
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 den Hauptpfad (oder Pfade) an, an den der untergeordnete Pfad angefügt wird. Wildcards 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. Sie sind für die Verwendung in Programmen und Skripts vorgesehen, in denen Sie den Gesamten oder Einen Teil eines Pfadnamens in einem bestimmten Format anzeigen möchten.
Verwenden Sie sie wie Dirname
, Normpath
, Realpath
, Join
oder andere Pfadmanipulatoren.
Sie können die Pfad-Cmdlets mit mehreren Anbietern verwenden, einschließlich der FileSystem
, Registry
und Certificate
Anbieter.
Dieses Cmdlet wurde entwickelt, um mit den Daten zu arbeiten, die von einem beliebigen Anbieter verfügbar gemacht werden. Geben Sie Get-PSProvider
ein, um die in Ihrer Sitzung verfügbaren Anbieter auflisten zu können. Weitere Informationen finden Sie unter über_Anbieter.