Split-Path
Gibt den angegebenen Teil eines Pfads zurück.
Syntax
ParentSet (Standard)
Split-Path
[-Path] <String[]>
[-Parent]
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
LeafSet
Split-Path
[-Path] <String[]>
-Leaf
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
LeafBaseSet
Split-Path
[-Path] <String[]>
-LeafBase
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
ExtensionSet
Split-Path
[-Path] <String[]>
-Extension
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
QualifierSet
Split-Path
[-Path] <String[]>
-Qualifier
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
NoQualifierSet
Split-Path
[-Path] <String[]>
-NoQualifier
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
IsAbsoluteSet
Split-Path
[-Path] <String[]>
-IsAbsolute
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
LiteralPathSet
Split-Path
-LiteralPath <String[]>
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Beschreibung
Das Split-Path Cmdlet gibt nur den angegebenen Teil eines Pfads zurück, z. B. den übergeordneten Ordner, einen Unterordner oder einen Dateinamen. Außerdem können Elemente abgerufen werden, auf die vom geteilten Pfad verwiesen wird, und es wird angegeben, ob der Pfad relativ oder absolut ist. Wenn Sie einen Pfad ohne Angabe anderer Parameter teilen, Split-Path wird der übergeordnete Teil des angegebenen Pfads zurückgegeben.
Der Split-Path Befehl gibt Zeichenfolgen zurück. Es werden keine FileInfo - oder andere Elementobjekte wie die *-Item Befehle zurückgegeben.
Beispiele
Beispiel 1: Abrufen des Qualifizierers eines Pfads
Split-Path -Path "HKCU:\Software\Microsoft" -Qualifier
HKCU:
Dieser Befehl gibt nur den Qualifizierer des Pfads zurück. Der Qualifizierer ist das Laufwerk.
Beispiel 2: Anzeigen des Dateinamenteils des Pfads
Gibt bei Verwendung des Leaf-ParametersSplit-Path nur das letzte Element in der angegebenen Pfadzeichenfolge zurück, unabhängig davon, ob es sich bei diesem Element um eine Datei oder ein Verzeichnis handelt.
Split-Path -Path .\folder1\*.txt -Leaf
*.txt
Split-Path -Path .\folder1\*.txt -Leaf -Resolve
file1.txt
file2.txt
Wenn Sie den Resolve-Parameter verwenden, Split-Path wird die angegebene Pfadzeichenfolge aufgelöst und die Vom Pfad referenzierten Elemente zurückgegeben.
Beispiel 3: Abrufen des übergeordneten Containers
Gibt bei Verwendung des Parent-ParametersSplit-Path nur den übergeordneten Containerteil der angegebenen Pfadzeichenfolge zurück. Wenn die Pfadzeichenfolge keinen übergeordneten Container enthält, Split-Path wird eine leere Zeichenfolge zurückgegeben.
Split-Path -Path .\folder1\file1.txt -Parent
.\folder1
Split-Path -Path .\folder1\file1.txt -Parent -Resolve
D:\temp\test\folder1
Wenn Sie den Resolve-Parameter verwenden, Split-Path wird die angegebene Pfadzeichenfolge aufgelöst und der vollständige Pfad des übergeordneten Containers zurückgegeben.
Beispiel 4: Bestimmt, ob ein Pfad absolut ist.
Mit diesem Befehl wird bestimmt, ob der Pfad relativ oder absolut ist. In diesem Fall ist der Pfad relativ zum aktuellen Ordner, der durch einen Punkt (.) dargestellt wird, zurückgegeben $false.
Split-Path -Path ".\My Pictures\*.jpg" -IsAbsolute
False
Beispiel 5: Ändern des Speicherorts in einen angegebenen Pfad
Dieser Befehl ändert Ihren Speicherort in den Ordner, der das PowerShell-Profil enthält.
PS C:\> Set-Location (Split-Path -Path $PROFILE)
PS C:\Users\User01\Documents\PowerShell>
Der Befehl in Klammern verwendet Split-Path , um nur das übergeordnete Element des Pfads zurückzugeben, der in der integrierten $PROFILE Variablen gespeichert ist. Der Parameter "Parent " ist der standardmäßige Parameter für geteilte Speicherorte.
Daher können Sie ihn aus dem Befehl weglassen. Die Klammern leiten PowerShell an, um den Befehl zuerst auszuführen. Dies ist eine nützliche Möglichkeit zum Verschieben in einen Ordner mit einem langen Pfadnamen.
Beispiel 6: Teilen eines Pfads mithilfe der Pipeline
'C:\Users\User01\My Documents\My Pictures' | Split-Path
C:\Users\User01\My Documents
Dieser Befehl verwendet einen Pipelineoperator (|) zum Senden eines Pfads zu Split-Path. Der Pfad wird in Anführungszeichen eingeschlossen, um anzugeben, dass es sich um ein einzelnes Token handelt.
Parameter
-Credential
Note
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.
Parametereigenschaften
| Typ: | PSCredential |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-Extension
Gibt an, dass dieses Cmdlet nur die Erweiterung des Blatts zurückgibt. Im Pfad wird z. B C:\Test\Logs\Pass1.log. nur .logzurückgegeben.
Dieser Parameter wurde in PowerShell 6.0 eingeführt.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
ExtensionSet
| Position: | Named |
| Obligatorisch.: | True |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-IsAbsolute
Gibt an, dass dieses Cmdlet zurückgibt $true , ob der Pfad absolut $false und relativ ist. Bei Windows muss eine absolute Pfadzeichenfolge mit einem Anbieterlaufwerksbezeichner beginnen, z. B. C: oder HKCU:. Ein relativer Pfad beginnt mit einem Punkt (.) oder einem Punkt (..).
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
IsAbsoluteSet
| Position: | Named |
| Obligatorisch.: | True |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-Leaf
Gibt bei Verwendung des Leaf-ParametersSplit-Path nur das letzte Element in der angegebenen Pfadzeichenfolge zurück, unabhängig davon, ob es sich bei diesem Element um eine Datei oder ein Verzeichnis handelt.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
LeafSet
| Position: | Named |
| Obligatorisch.: | True |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-LeafBase
Gibt an, dass dieses Cmdlet nur den Basisnamen des Blatts zurückgibt. Im Pfad wird z. B C:\Test\Logs\Pass1.log. nur Pass1zurückgegeben.
Dieser Parameter wurde in PowerShell 6.0 eingeführt.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
LeafBaseSet
| Position: | Named |
| Obligatorisch.: | True |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-LiteralPath
Gibt die zu teilenden Pfade an. Im Gegensatz zu Path wird der Wert von LiteralPath genau so verwendet, wie er eingegeben wird. Es werden keine Zeichen als Wildcardzeichen interpretiert. Wenn der Pfad Escapezeichen enthält, müssen Sie ihn in einfache Anführungszeichen einschließen. Einfache Anführungszeichen signalisieren PowerShell, dass keine Zeichen als Escapesequenzen interpretiert werden sollen.
Parametereigenschaften
| Typ: | String[] |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
| Aliase: | PSPath, EP |
Parametersätze
LiteralPathSet
| Position: | Named |
| Obligatorisch.: | True |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-NoQualifier
Gibt an, dass dieses Cmdlet den Pfad ohne den Qualifizierer zurückgibt. Für fileSystem- oder Registrierungsanbieter ist der Qualifizierer das Laufwerk des Anbieterpfads, z C: . B. oder HKCU:. Im Pfad wird z. B C:\Test\Logs\Pass1.log. nur \Test\Logs\Pass1.logzurückgegeben.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
NoQualifierSet
| Position: | Named |
| Obligatorisch.: | True |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-Parent
Split-Path gibt nur den übergeordneten Containerteil der angegebenen Pfadzeichenfolge zurück. Wenn die Pfadzeichenfolge keinen übergeordneten Container enthält, Split-Path wird eine leere Zeichenfolge zurückgegeben.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
ParentSet
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-Path
Gibt die zu teilenden Pfade an. Platzhalterzeichen sind zulässig. Wenn der Pfad Leerzeichen enthält, schließen Sie ihn in Anführungszeichen ein. Sie können auch einen Pfad zu diesem Cmdlet weiterleiten.
Parametereigenschaften
| Typ: | String[] |
| Standardwert: | None |
| Unterstützt Platzhalter: | True |
| Nicht anzeigen: | False |
Parametersätze
ParentSet
| Position: | 0 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | True |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
LeafSet
| Position: | 0 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | True |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
LeafBaseSet
| Position: | 0 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | True |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
ExtensionSet
| Position: | 0 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | True |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
QualifierSet
| Position: | 0 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | True |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
NoQualifierSet
| Position: | 0 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | True |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
IsAbsoluteSet
| Position: | 0 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | True |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-Qualifier
Gibt an, dass dieses Cmdlet nur den Qualifizierer des angegebenen Pfads zurückgibt. Für die FileSystem- oder Registrierungsanbieter ist der Qualifizierer das Laufwerk des Anbieterpfads, z C: . B. oder HKCU:.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
QualifierSet
| Position: | 1 |
| Obligatorisch.: | True |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-Resolve
Gibt an, dass dieses Cmdlet die Elemente anzeigt, auf die durch den resultierenden geteilten Pfad verwiesen wird, anstatt die Pfadelemente anzuzeigen.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch.: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
CommonParameters
Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.
Eingaben
String
Sie können eine Zeichenfolge weiterleiten, die einen Pfad zu diesem Cmdlet enthält.
Ausgaben
String
Dieses Cmdlet gibt Textzeichenfolgen zurück. Wenn Sie den Resolve-Parameter angeben, wird eine Zeichenfolge zurückgegeben, die die Position der Elemente beschreibt. Es werden keine Objekte zurückgegeben, die die Elemente darstellen, z. B. ein FileInfo - oder RegistryKey-Objekt .
Boolean
Wenn Sie den Parameter IsAbsolute angeben, gibt dieses Cmdlet einen booleschen Wert zurück.
Hinweise
Die Parameter für geteilte Speicherorte (Qualifier, Parent, Extension, Leaf, LeafBase und NoQualifier) sind exklusiv. Sie können in jedem Befehl nur eins verwenden.
Die Cmdlets, die das Path-Substantiv (die Pfad-Cmdlets) enthalten, arbeiten mit 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 so, wie Sie Dirname, Normpath, Realpath, Join oder andere Pfadmanipulationen verwenden würden.
Sie können die Path-Cmdlets zusammen mit mehreren Anbietern verwenden. Dazu gehören die FileSystem-, Registrierungs- und Zertifikatanbieter.
Split-Pathist für die Arbeit mit den daten konzipiert, die von jedem Anbieter verfügbar gemacht werden. Geben SieGet-PSProviderein, um die in Ihrer Sitzung verfügbaren Anbieter auflisten zu können. Weitere Informationen finden Sie unter über_Anbieter.