Freigeben über


Split-Path

Gibt den angegebenen Teil eines Pfads zurück.

Syntax

ParentSet (Standard)

Split-Path
    [-Path] <String[]>
    [-Parent]
    [-Resolve]
    [-Credential <PSCredential>]
    [-UseTransaction]
    [<CommonParameters>]

NoQualifierSet

Split-Path
    [-Path] <String[]>
    [-NoQualifier]
    [-Resolve]
    [-Credential <PSCredential>]
    [-UseTransaction]
    [<CommonParameters>]

LeafSet

Split-Path
    [-Path] <String[]>
    [-Leaf]
    [-Resolve]
    [-Credential <PSCredential>]
    [-UseTransaction]
    [<CommonParameters>]

QualifierSet

Split-Path
    [-Path] <String[]>
    [-Qualifier]
    [-Resolve]
    [-Credential <PSCredential>]
    [-UseTransaction]
    [<CommonParameters>]

IsAbsoluteSet

Split-Path
    [-Path] <String[]>
    [-Resolve]
    [-IsAbsolute]
    [-Credential <PSCredential>]
    [-UseTransaction]
    [<CommonParameters>]

LiteralPathSet

Split-Path
    -LiteralPath <String[]>
    [-Resolve]
    [-Credential <PSCredential>]
    [-UseTransaction]
    [<CommonParameters>]

Beschreibung

Das cmdlet Split-Path 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.

Sie können dieses Cmdlet verwenden, um nur einen ausgewählten Teil eines Pfads abzurufen oder zu übermitteln.

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

Wenn Sie den Parameter Leaf verwenden, gibt Split-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 Parameter Resolve verwenden, löst Split-Path die angegebene Pfadzeichenfolge auf und gibt die Vom Pfad referenzierten Elemente zurück.

Beispiel 3: Abrufen des übergeordneten Containers

Bei Verwendung des Parameters Parent gibt Split-Path nur den übergeordneten Containerteil der angegebenen Pfadzeichenfolge zurück. Wenn die Path Zeichenfolge keinen übergeordneten Container enthält, gibt Split-Path eine leere Zeichenfolge zurück.

Split-Path -Path .\folder1\file1.txt -Parent
.\folder1
Split-Path -Path .\folder1\file1.txt -Parent -Resolve
D:\temp\test\folder1

Wenn Sie den Parameter Resolve verwenden, löst Split-Path die angegebene Pfadzeichenfolge auf und gibt den vollständigen Pfad des übergeordneten Containers zurück.

Beispiel 4: Bestimmt, ob ein Pfad absolut ist.

Mit diesem Befehl wird bestimmt, ob der Pfad relativ oder absolut ist. In diesem Fall, da der Pfad relativ zum aktuellen Ordner ist, der durch einen Punkt (.) dargestellt wird, gibt er $falsezurück.

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 standardparameter für geteilte Position. 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 (|), um einen Pfad zu Split-Pathzu senden. Der Pfad wird in Anführungszeichen eingeschlossen, um anzugeben, dass es sich um ein einzelnes Token handelt.

Parameter

-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.

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

-IsAbsolute

Gibt an, dass dieses Cmdlet $true zurückgibt, wenn der Pfad absolut ist und $false, wenn es relativ ist. Unter Windows muss eine absolute Pfadzeichenfolge mit einem Anbieterlaufwerkbezeichner 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:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Leaf

Wenn Sie den Parameter Leaf verwenden, gibt Split-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:False
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 wurde. 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

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. B. C: oder HKCU:. Im Pfad C:\Test\Logs\Pass1.logwird beispielsweise nur \Test\Logs\Pass1.logzurückgegeben.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

NoQualifierSet
Position:Named
Obligatorisch:False
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 Path Zeichenfolge keinen übergeordneten Container enthält, gibt Split-Path eine leere Zeichenfolge zurück.

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
NoQualifierSet
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
QualifierSet
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. B. C: oder HKCU:.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

QualifierSet
Position:1
Obligatorisch:False
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

-UseTransaction

Enthält den Befehl in der aktiven Transaktion. Dieser Parameter ist nur gültig, wenn eine Transaktion ausgeführt wird. Weitere Informationen finden Sie unter about_Transactions.

Parametereigenschaften

Typ:SwitchParameter
Standardwert:False
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:usetx

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 Parameter Resolve 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 (Qualifizierer, übergeordnete, Blatt-und NoQualifier) sind exklusiv. Sie können in jedem Befehl nur eins verwenden.

  • Die Cmdlets, die das Path Substantiv (die Path 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, Joinoder andere Pfadmanipulatoren verwenden würden.

  • Sie können die Path Cmdlets zusammen mit mehreren Anbietern verwenden. Dazu gehören die FileSystem-, Registrierungs- und Zertifikatanbieter.

  • Split-Path ist für die Arbeit mit den daten konzipiert, die von jedem Anbieter verfügbar gemacht werden. Geben Sie Get-PSProviderein, um die in Ihrer Sitzung verfügbaren Anbieter auflisten zu können. Weitere Informationen finden Sie unter über_Anbieter.