Sdílet prostřednictvím


Split-Path

Vrátí zadanou část cesty.

Syntaxe

Split-Path
     [-Path] <String[]>
     [-Parent]
     [-Resolve]
     [-Credential <PSCredential>]
     [-UseTransaction]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     [-NoQualifier]
     [-Resolve]
     [-Credential <PSCredential>]
     [-UseTransaction]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     [-Leaf]
     [-Resolve]
     [-Credential <PSCredential>]
     [-UseTransaction]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     [-Qualifier]
     [-Resolve]
     [-Credential <PSCredential>]
     [-UseTransaction]
     [<CommonParameters>]
Split-Path
     [-Path] <String[]>
     [-Resolve]
     [-IsAbsolute]
     [-Credential <PSCredential>]
     [-UseTransaction]
     [<CommonParameters>]
Split-Path
     -LiteralPath <String[]>
     [-Resolve]
     [-Credential <PSCredential>]
     [-UseTransaction]
     [<CommonParameters>]

Description

Rutina Split-Path vrátí jenom zadanou část cesty, například nadřazenou složku, podsložku nebo název souboru. Může také získat položky, na které odkazuje rozdělená cesta, a zjistit, jestli je cesta relativní nebo absolutní.

Pomocí této rutiny můžete získat nebo odeslat jenom vybranou část cesty.

Příklady

Příklad 1: Získání kvalifikátoru cesty

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

Tento příkaz vrátí pouze kvalifikátor cesty. Kvalifikátorem je jednotka.

Příklad 2: Zobrazení názvů souborů

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

Tento příkaz zobrazí soubory, na které odkazuje cesta rozdělení. Vzhledem k tomu, že tato cesta je rozdělená na poslední položku, označovanou také jako list, zobrazí příkaz pouze názvy souborů.

Parametr Resolve říká Split-Path zobrazit položky, na které odkazuje rozdělená cesta, místo aby se zobrazila rozdělená cesta.

Stejně jako všechny příkazy Split-Path vrátí tento příkaz řetězce. Nevrací FileInfo objekty, které představují soubory.

Příklad 3: Získání nadřazeného kontejneru

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

Tento příkaz vrátí pouze nadřazené kontejnery cesty. Vzhledem k tomu, že neobsahuje žádné parametry k určení rozdělení, Split-Path používá výchozí umístění rozdělení, což je Nadřazená.

Příklad 4: Určuje, zda je cesta absolutní.

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

Tento příkaz určuje, jestli je cesta relativní nebo absolutní. V tomto případě je cesta relativní vzhledem k aktuální složce, která je reprezentována tečkou (.), vrací $False.

Příklad 5: Změna umístění na zadanou cestu

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

Tento příkaz změní umístění do složky, která obsahuje profil PowerShellu.

Příkaz v závorkách používá Split-Path vrátit pouze nadřazenou cestu uloženou v předdefinované proměnné $Profile. Parametr Parent je výchozím parametrem rozděleného umístění. Proto ho můžete z příkazu vynechat. Závorky nasměrují PowerShell k prvnímu spuštění příkazu. To je užitečný způsob, jak přejít do složky, která má dlouhý název cesty.

Příklad 6: Rozdělení cesty pomocí kanálu

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

Tento příkaz používá operátor kanálu (|) k odeslání cesty k split-path. Cesta je uzavřena do uvozovek, aby bylo možné označit, že se jedná o jeden token.

Parametry

-Credential

Poznámka

Tento parametr nejsou podporovány žádnými poskytovateli nainstalovanými v PowerShellu. Pokud chcete zosobnit jiného uživatele nebo zvýšit oprávnění při spuštění této rutiny, použijte Invoke-Command.

Typ:PSCredential
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-IsAbsolute

Označuje, že tato rutina vrátí $True, pokud je cesta absolutní a $False, pokud je relativní. Absolutní cesta má délku větší než nula a nepoužívá tečku (.) k označení aktuální cesty.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Leaf

Označuje, že tato rutina vrací pouze poslední položku nebo kontejner v cestě. Například v cestě C:\Test\Logs\Pass1.logvrátí pouze Pass1.log.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-LiteralPath

Určuje cesty, které se mají rozdělit. Na rozdíl odcesty se hodnota LiterálPath používá přesně tak, jak je zadána. Žádné znaky nejsou interpretovány jako zástupné znaky. Pokud cesta obsahuje řídicí znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, aby nepřekládaly žádné znaky jako řídicí sekvence.

Typ:String[]
Aliasy:PSPath
Position:Named
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-NoQualifier

Označuje, že tato rutina vrátí cestu bez kvalifikátoru. Pro zprostředkovatele fileSystem nebo registru je kvalifikátor jednotkou cesty zprostředkovatele, například C: nebo HKCU:. Například v cestě C:\Test\Logs\Pass1.logvrátí pouze \Test\Logs\Pass1.log.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Parent

Označuje, že tato rutina vrací pouze nadřazené kontejnery položky nebo kontejneru určené cestou. Například v cestě C:\Test\Logs\Pass1.logvrátí C:\Test\Logs. Parametr Parent je výchozím parametrem rozděleného umístění.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Path

Určuje cesty, které se mají rozdělit. Jsou povoleny zástupné znaky. Pokud cesta obsahuje mezery, uzavřete ji do uvozovek. Cestu k této rutině můžete také převést.

Typ:String[]
Position:0
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:True
Přijmout zástupné znaky:True

-Qualifier

Označuje, že tato rutina vrátí pouze kvalifikátor zadané cesty. Pro zprostředkovatele fileSystem nebo registru je kvalifikátor jednotkou cesty zprostředkovatele, například C: nebo HKCU:.

Typ:SwitchParameter
Position:1
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:True
Přijmout zástupné znaky:False

-Resolve

Označuje, že tato rutina zobrazuje položky, na které odkazuje výsledná rozdělená cesta místo zobrazení prvků cesty.

Typ:SwitchParameter
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-UseTransaction

Zahrnuje příkaz v aktivní transakci. Tento parametr je platný pouze v případě, že probíhá transakce. Další informace najdete v tématu about_Transactions.

Typ:SwitchParameter
Aliasy:usetx
Position:Named
Default value:False
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

Vstupy

String

Řetězec, který obsahuje cestu k této rutině, můžete převést.

Výstupy

System.String, System.Boolean

rozdělení cesty vrátí textové řetězce. Když zadáte parametr Resolve, Split-Path vrátí řetězec, který popisuje umístění položek; Nevrací objekty, které představují položky, například FileInfo nebo RegistryKey objektu.

Když zadáte parametr IsAbsolute, Split-Path vrátí logickou hodnotu.

Poznámky

  • Parametry rozděleného umístění (kvalifikátor, nadřazené, list a NoQualifier) jsou exkluzivní. V každém příkazu můžete použít jenom jeden.

    Rutiny, které obsahují Cestu podstatné jméno (rutiny Cesta), pracují s názvy cest a vracejí názvy ve stručné podobě, které můžou interpretovat všichni poskytovatelé PowerShellu. Jsou určené pro použití v programech a skriptech, ve kterých chcete zobrazit název cesty v určitém formátu nebo jeho část. Používejte je způsobem, jakým byste použili Dirname, normpath, realpath, Joinnebo jiné manipulátory cesty.

    Rutiny Path můžete použít společně s několika poskytovateli. Patří sem zprostředkovatelé systému souborů, registru a certifikátů.

    rozdělení cesty je navržená tak, aby fungovala s daty vystavenými jakýmkoli poskytovatelem. Pokud chcete zobrazit seznam poskytovatelů dostupných v relaci, zadejte Get-PSProvider. Další informace najdete v tématu about_Providers.