Partilhar via


Split-Path

Retorna a parte especificada de um caminho.

Sintaxe

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

Description

O Split-Path cmdlet retorna apenas a parte especificada de um caminho, como a pasta pai, uma subpasta ou um nome de arquivo. Ele também pode obter itens que são referenciados pelo caminho dividido e dizer se o caminho é relativo ou absoluto. Se você dividir um caminho sem especificar outros parâmetros, Split-Path retornará a parte pai do caminho fornecido.

O Split-Path comando retorna cadeias de caracteres. Ele não retorna FileInfo ou outros objetos de item como os *-Item comandos.

Exemplos

Exemplo 1: Obter o qualificador de um caminho

Split-Path -Path "HKCU:\Software\Microsoft" -Qualifier

HKCU:

Este comando retorna apenas o qualificador do caminho. O qualificador é a unidade.

Exemplo 2: Exibir a parte do nome do arquivo do caminho

Ao usar o parâmetro Leaf , Split-Path retorna apenas o último item na cadeia de caracteres de caminho fornecida, independentemente de esse item ser um arquivo ou um diretório.

Split-Path -Path .\folder1\*.txt -Leaf

*.txt

Split-Path -Path .\folder1\*.txt -Leaf -Resolve

file1.txt
file2.txt

Quando você usa o parâmetro Resolve , Split-Path resolve a cadeia de caracteres de caminho fornecida e retorna os itens referenciados pelo caminho.

Exemplo 3: Obter o contêiner pai

Ao usar o parâmetro Parent , Split-Path retorna apenas a parte do contêiner pai da cadeia de caracteres de caminho fornecida. Se a cadeia de caracteres Path não contiver um contêiner pai, Split-Path retornará uma cadeia de caracteres vazia.

Split-Path -Path .\folder1\file1.txt -Parent

.\folder1

Split-Path -Path .\folder1\file1.txt -Parent -Resolve

D:\temp\test\folder1

Quando você usa o parâmetro Resolve , Split-Path resolve a cadeia de caracteres de caminho fornecida e retorna o caminho completo do contêiner pai.

Exemplo 4: Determina se um caminho é absoluto

Este comando determina se o caminho é relativo ou absoluto. Nesse caso, como o caminho é relativo à pasta atual, que é representada por um ponto (.), ele retorna $False.

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

False

Exemplo 5: Alterar o local para um caminho especificado

Este comando altera seu local para a pasta que contém o perfil do PowerShell.

PS C:\> Set-Location (Split-Path -Path $profile)
PS C:\Users\User01\Documents\PowerShell>

O comando entre parênteses usa Split-Path para retornar apenas o pai do caminho armazenado na variável interna $Profile . O parâmetro Parent é o parâmetro de local de divisão padrão. Portanto, você pode omiti-lo do comando. Os parênteses direcionam o PowerShell para executar o comando primeiro. Esta é uma maneira útil de mover para uma pasta que tem um nome de caminho longo.

Exemplo 6: Dividir um caminho usando o pipeline

'C:\Users\User01\My Documents\My Pictures' | Split-Path

C:\Users\User01\My Documents

Este comando usa um operador de pipeline (|) para enviar um caminho para Split-Path. O caminho é colocado entre aspas para indicar que é um único token.

Parâmetros

-Credential

Nota

Esse parâmetro não é suportado por nenhum provedor instalado com o PowerShell. Para representar outro usuário ou elevar suas credenciais ao executar esse cmdlet, use Invoke-Command.

Tipo:PSCredential
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Extension

Indica que esse cmdlet retorna apenas a extensão da folha. Por exemplo, no caminho C:\Test\Logs\Pass1.log, ele retorna apenas .log.

Esse parâmetro foi introduzido no PowerShell 6.0.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-IsAbsolute

Indica que esse cmdlet retornará $True se o caminho for absoluto e $False se for relativo. No Windows, uma cadeia de caracteres de caminho absoluto deve começar com um especificador de unidade de provedor, como C: ou HKCU:. Um caminho relativo começa com um ponto (.) ou um ponto-ponto (..).

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Leaf

Ao usar o parâmetro Leaf , Split-Path retorna apenas o último item na cadeia de caracteres de caminho fornecida, independentemente de esse item ser um arquivo ou um diretório.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-LeafBase

Indica que esse cmdlet retorna apenas o nome base da folha. Por exemplo, no caminho C:\Test\Logs\Pass1.log, ele retorna apenas Pass1.

Esse parâmetro foi introduzido no PowerShell 6.0.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-LiteralPath

Especifica os caminhos a serem divididos. Ao contrário de Path, o valor de LiteralPath é usado exatamente como é digitado. Nenhum caractere é interpretado como caracteres curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. Aspas simples dizem ao PowerShell para não interpretar nenhum caractere como sequências de escape.

Tipo:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-NoQualifier

Indica que esse cmdlet retorna o caminho sem o qualificador. Para o FileSystem ou provedores de registro, o qualificador é a unidade do caminho do provedor, como C: ou HKCU:. Por exemplo, no caminho C:\Test\Logs\Pass1.log, ele retorna apenas \Test\Logs\Pass1.log.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Parent

Split-Path Retorna apenas a parte do contêiner pai da cadeia de caracteres de caminho fornecida. Se a cadeia de caracteres Path não contiver um contêiner pai, Split-Path retornará uma cadeia de caracteres vazia.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Path

Especifica os caminhos a serem divididos. Caracteres curinga são permitidos. Se o caminho incluir espaços, coloque-o entre aspas. Você também pode canalizar um caminho para esse cmdlet.

Tipo:String[]
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:True

-Qualifier

Indica que esse cmdlet retorna apenas o qualificador do caminho especificado. Para o FileSystem ou provedores de registro, o qualificador é a unidade do caminho do provedor, como C: ou HKCU:.

Tipo:SwitchParameter
Position:1
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Resolve

Indica que esse cmdlet exibe os itens referenciados pelo caminho dividido resultante em vez de exibir os elementos path.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

String

Você pode canalizar uma cadeia de caracteres que contenha um caminho para esse cmdlet.

Saídas

String

Este cmdlet retorna cadeias de caracteres de texto. Quando você especifica o parâmetro Resolve , ele retorna uma cadeia de caracteres que descreve o local dos itens. Ele não retorna objetos que representam os itens, como um objeto FileInfo ou RegistryKey .

Boolean

Quando você especifica o parâmetro IsAbsolute , esse cmdlet retorna um valor booleano .

Notas

  • Os parâmetros de localização dividida (Qualifier, Parent, Extension, Leaf, LeafBase e NoQualifier) são exclusivos. Você pode usar apenas um em cada comando.

  • Os cmdlets que contêm o substantivo Path (os cmdlets Path ) funcionam com nomes de caminho e retornam os nomes em um formato conciso que todos os provedores do PowerShell podem interpretar. Eles são projetados para uso em programas e scripts onde você deseja exibir todo ou parte de um nome de caminho em um formato específico. Use-os da maneira que você usaria Dirname, Normpath, Realpath, Join ou outros manipuladores de caminho.

  • Você pode usar os cmdlets Path junto com vários provedores. Estes incluem os provedores FileSystem, Registry e Certificate.

  • Split-Path é projetado para trabalhar com os dados expostos por qualquer provedor. Para listar os provedores disponíveis em sua sessão, digite Get-PSProvider. Para obter mais informações, consulte about_Providers.