Dela via


Split-Path

Returnerar den angivna delen av en sökväg.

Syntax

Split-Path
     [-Path] <String[]>
     [-Parent]
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     [[-Qualifier]]
     [-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[]>
     [-NoQualifier]
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     [-Resolve]
     [-IsAbsolute]
     [-Credential <PSCredential>]
     [<CommonParameters>]
Split-Path
     -LiteralPath <String[]>
     [-Resolve]
     [-Credential <PSCredential>]
     [<CommonParameters>]

Description

Cmdleten Split-Path returnerar endast den angivna delen av en sökväg, till exempel den överordnade mappen, en undermapp eller ett filnamn. Den kan också hämta objekt som refereras av den delade sökvägen och avgöra om sökvägen är relativ eller absolut.

Du kan använda den här cmdleten för att hämta eller skicka endast en vald del av en sökväg.

Exempel

Exempel 1: Hämta kvalificeraren för en sökväg

PS C:\> Split-Path -Path "HKCU:\Software\Microsoft" -Qualifier
HKCU:

Det här kommandot returnerar endast kvalificeraren för sökvägen. Kvalificeraren är enheten.

Exempel 2: Visa filnamn

PS C:\> Split-Path -Path "C:\Test\Logs\*.log" -Leaf -Resolve
Pass1.log
Pass2.log
...

Det här kommandot visar de filer som refereras av den delade sökvägen. Eftersom den här sökvägen delas upp till det sista objektet, även kallat löv, visar kommandot endast filnamnen.

Parametern Resolve instruerar Split-Path att visa de objekt som den delade sökvägen refererar till, i stället för att visa den delade sökvägen.

Precis som alla kommandon med delad sökväg returnerar det här kommandot strängar. Det returnerar inte FileInfo-objekt som representerar filerna.

Exempel 3: Hämta den överordnade containern

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

Det här kommandot returnerar endast de överordnade containrarna i sökvägen. Eftersom den inte innehåller några parametrar för att ange uppdelningen använder Split-Path standardvärdet för delad plats, som är Överordnad.

Exempel 4: Avgör om en sökväg är absolut

PS C:\> Split-Path -Path ".\My Pictures\*.jpg" -IsAbsolute
False

Det här kommandot avgör om sökvägen är relativ eller absolut. I det här fallet, eftersom sökvägen är relativ till den aktuella mappen, som representeras av en punkt (.), returnerar den $False.

Exempel 5: Ändra plats till en angiven sökväg

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

Det här kommandot ändrar din plats till mappen som innehåller PowerShell-profilen.

Kommandot inom parentes använder Split-Path för att endast returnera den överordnade sökvägen som lagras i den inbyggda variabeln $Profile. Den överordnade parametern är standardparametern för delad plats. Därför kan du utelämna det från kommandot . Parenteserna dirigerar PowerShell för att köra kommandot först. Det här är ett användbart sätt att flytta till en mapp som har ett långt sökvägsnamn.

Exempel 6: Dela en sökväg med hjälp av pipelinen

PS C:\> 'C:\Documents and Settings\User01\My Documents\My Pictures' | Split-Path
C:\Documents and Settings\User01\My Documents

Det här kommandot använder en pipelineoperator (|) för att skicka en sökväg till Split-Path. Sökvägen omges av citattecken för att indikera att det är en enda token.

Parametrar

-Credential

Anteckning

Den här parametern stöds inte av några leverantörer som är installerade med PowerShell. Om du vill personifiera en annan användare eller höja dina autentiseringsuppgifter när du kör den här cmdleten använder du Invoke-Command.

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

-Extension

Anger att denna cmdlet endast returnerar bladets tillägg. I sökvägen C:\Test\Logs\Pass1.logreturnerar den till exempel bara .log.

Den här parametern introducerades i PowerShell 6.0.

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

-IsAbsolute

Anger att den här cmdleten returnerar $True om sökvägen är absolut och $False om den är relativ. En absolut sökväg har en längd som är större än noll och använder inte en punkt (.) för att ange den aktuella sökvägen.

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

-Leaf

Anger att denna cmdlet endast returnerar det sista objektet eller containern i sökvägen. I sökvägen C:\Test\Logs\Pass1.logreturnerar den till exempel bara Pass1.log.

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

-LeafBase

Anger att denna cmdlet endast returnerar bladets basnamn. I sökvägen C:\Test\Logs\Pass1.logreturnerar den till exempel bara Pass1.

Den här parametern introducerades i PowerShell 6.0.

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

-LiteralPath

Anger vilka sökvägar som ska delas. Till skillnad från Path används värdet för LiteralPath exakt som det skrivs. Inga tecken tolkas som jokertecken. Om sökvägen innehåller escape-tecken omger du den inom enkla citattecken. Enkla citattecken säger till PowerShell att inte tolka några tecken som escape-sekvenser.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-NoQualifier

Anger att den här cmdleten returnerar sökvägen utan kvalificeraren. För FileSystem eller registerprovidrar är kvalificeraren enheten för providersökvägen, till exempel C: eller HKCU:. I sökvägen C:\Test\Logs\Pass1.logreturneras till exempel endast \Test\Logs\Pass1.log.

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

-Parent

Anger att denna cmdlet endast returnerar de överordnade containrarna för objektet eller containern som anges av sökvägen. I sökvägen C:\Test\Logs\Pass1.logreturnerar den till exempel C:\Test\Logs. Den överordnade parametern är standardparametern för delad plats.

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

-Path

Anger vilka sökvägar som ska delas. Jokertecken tillåts. Om sökvägen innehåller blanksteg omger du den inom citattecken. Du kan också skicka en sökväg till den här cmdleten.

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

-Qualifier

Anger att denna cmdlet endast returnerar kvalificeraren för den angivna sökvägen. För FileSystem eller registerprovidrar är kvalificeraren enheten för providersökvägen, till exempel C: eller HKCU:.

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

-Resolve

Anger att den här cmdleten visar de objekt som refereras till av den resulterande delade sökvägen i stället för att visa sökvägselementen.

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

Indata

String

Du kan skicka en sträng som innehåller en sökväg till den här cmdleten.

Utdata

System.String, System.Boolean

Delad sökväg returnerar textsträngar. När du anger parametern Lös returnerar Split-Path en sträng som beskriver platsen för objekten. det returnerar inte objekt som representerar objekten, till exempel ett FileInfo- eller RegistryKey-objekt .

När du anger parametern IsAbsolute returnerar Split-Path ett booleskt värde.

Kommentarer

  • Parametrarna för delad plats (Qualifier, Parent, Extension, Leaf, LeafBase och NoQualifier) är exklusiva. Du kan bara använda en i varje kommando.

    Cmdletarna som innehåller path-substantivet (path-cmdletarna) fungerar med sökvägsnamn och returnerar namnen i ett kortfattat format som alla PowerShell-leverantörer kan tolka. De är utformade för användning i program och skript där du vill visa hela eller delar av ett sökvägsnamn i ett visst format. Använd dem på det sätt som du använder Dirname, Normpath, Realpath, Join eller andra sökvägsmanipulatörer.

    Du kan använda cmdletar för sökväg tillsammans med flera leverantörer. Dessa inkluderar FileSystem, Registry och Certifikatprovidrar.

    Delad sökväg är utformad för att fungera med data som exponeras av alla leverantörer. Om du vill visa en lista över de leverantörer som är tillgängliga i sessionen skriver du Get-PSProvider. Mer information finns i about_Providers.