Split-Path

Gibt den angegebenen Teil eines Pfads zurück.

Syntax

Split-Path
     [-Path] <String[]>
     [-Parent]
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     -Leaf
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     -LeafBase
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     -Extension
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     -Qualifier
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     -NoQualifier
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     [-Resolve]
     -IsAbsolute
     [-Credential <PSCredential>]
     [<CommonParameters>]
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 von dem geteilten Pfad verwiesen wird, und es kann angegeben werden, ob es sich um einen relativen oder absoluten Pfad handelt.

Sie können mit diesem Cmdlet nur einen ausgewählten Teil eines Pfads abrufen oder senden.

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 von Dateinamen

Split-Path -Path "C:\Test\Logs\*.log" -Leaf -Resolve

Pass1.log
Pass2.log
...

Mit diesem Befehl werden die Dateien angezeigt, auf die vom geteilten Pfad verwiesen wird. Da dieser Pfad auf das letzte Element aufgeteilt ist, auch als Blatt bezeichnet, zeigt der Befehl nur die Dateinamen an.

Der Resolve-Parameter weist Split-Path an, die Elemente anzuzeigen, auf die der geteilte Pfad verweist, anstatt den geteilten Pfad anzuzeigen.

Wie alle Split-Path Befehle gibt dieser Befehl Zeichenfolgen zurück. Es werden keine FileInfo-Objekte zurückgegeben, die die Dateien darstellen.

Beispiel 3: Abrufen des übergeordneten Containers

Split-Path -Parent "C:\WINDOWS\system32\WindowsPowerShell\V1.0\about_*.txt"

C:\WINDOWS\system32\WindowsPowerShell\V1.0

Mit diesem Befehl werden nur die übergeordneten Container des Pfads zurückgegeben. Da sie keine Parameter zum Angeben der Aufteilung enthält, Split-Path wird der Standardwert für den geteilten Speicherort verwendet, der übergeordnete Parameter ist.

Beispiel 4: Bestimmt, ob ein Pfad absolut ist.

Split-Path -Path ".\My Pictures\*.jpg" -IsAbsolute

False

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.

Beispiel 5: Ändern des Speicherorts in einen angegebenen Pfad

PS C:\> Set-Location (Split-Path -Path $profile)
PS C:\Documents and Settings\User01\My Documents\WindowsPowerShell>

Dieser Befehl ändert Ihren Speicherort in den Ordner, der das PowerShell-Profil enthält.

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:\Documents and Settings\User01\My Documents\My Pictures' | Split-Path

C:\Documents and Settings\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

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.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-IsAbsolute

Gibt an, dass dieses Cmdlet zurückgibt $True , ob der Pfad absolut $False und relativ ist. Ein absoluter Pfad hat eine Länge größer als Null und verwendet keinen Punkt (.), um den aktuellen Pfad anzugeben.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Leaf

Gibt an, dass dieses Cmdlet nur das letzte Element oder den letzten Container im Pfad zurückgibt. Im Pfad wird z. B C:\Test\Logs\Pass1.log. nur Pass1.logzurückgegeben.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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 Platzhalter interpretiert. Wenn der Pfad Escapezeichen enthält, müssen Sie ihn in einfache Anführungszeichen einschließen. Einfache Anführungszeichen weisen PowerShell an, keine Zeichen als Escapesequenzen zu interpretieren.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Parent

Gibt an, dass dieses Cmdlet nur die übergeordneten Container des Elements oder des durch den Pfad angegebenen Containers zurückgibt. In dem Pfad wird z. B C:\Test\Logs\Pass1.log. zurückgegeben C:\Test\Logs. Der Parameter "Parent " ist der standardmäßige Parameter für geteilte Speicherorte.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Path

Gibt die zu teilenden Pfade an. Platzhalterzeichen sind zulässig. Wenn der Pfad Leerzeichen enthält, müssen Sie ihn in Anführungszeichen einschließen. Sie können auch einen Pfad zu diesem Cmdlet weiterleiten.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-Qualifier

Gibt an, dass dieses Cmdlet nur den Qualifizierer des angegebenen Pfads zurückgibt. Für fileSystem- oder Registrierungsanbieter ist der Qualifizierer das Laufwerk des Anbieterpfads, z C: . B. oder HKCU:.

Type:SwitchParameter
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Resolve

Gibt an, dass dieses Cmdlet die Elemente anzeigt, auf die durch den resultierenden geteilten Pfad verwiesen wird, anstatt die Pfadelemente anzuzeigen.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

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. In einem Befehl kann immer nur ein Parameter angegeben werden.

  • 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-Path ist für die Arbeit mit den Daten konzipiert, die von jedem 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.