Share via


Join-Path

Combina um caminho e um caminho filho em um único caminho.

Syntax

Join-Path
    [-Path] <String[]>
    [-ChildPath] <String>
    [[-AdditionalChildPath] <String[]>]
    [-Resolve]
    [-Credential <PSCredential>]
    [<CommonParameters>]

Description

O Join-Path cmdlet combina um caminho e um caminho filho em um único caminho. O provedor fornece os delimitadores de caminho.

Exemplos

Exemplo 1: Combinar um caminho com um caminho filho

PS C:\> Join-Path -Path "path" -ChildPath "childpath"

path\childpath

Esse comando usa Join-Path para combinar um caminho com um caminho filho.

Como o comando é executado a FileSystem partir do provedor, ele fornece o \ delimitador para unir os caminhos.

Exemplo 2: Combinar caminhos que já contêm separadores de diretório

PS C:\> Join-Path -Path "path\" -ChildPath "\childpath"

path\childpath

Os separadores \ de diretório existentes são manipulados para que haja apenas um separador entre Path e ChildPath

Exemplo 3: Exibir arquivos e pastas unindo um caminho a um caminho filho

Join-Path "C:\win*" "System*" -Resolve

Esse comando exibe os arquivos e pastas que são referenciados unindo o C:\Win\* caminho e o System\* caminho filho. Ele exibe os mesmos arquivos e pastas que Get-ChildItemo , mas exibe o caminho totalmente qualificado para cada item. Neste comando, os nomes de Path parâmetros opcionais e ChildPath opcionais são omitidos.

Exemplo 4: Usar o caminho de associação com o provedor de registro do PowerShell

PS HKLM:\> Join-Path -Path System -ChildPath *ControlSet* -Resolve

HKLM:\System\ControlSet001
HKLM:\System\CurrentControlSet

Esse comando exibe as chaves do Registro na subchave do HKLM\System Registro que incluem ControlSet.

O Resolve parâmetro, tenta resolver o caminho associado, incluindo curingas do caminho do provedor atual HKLM:\

Exemplo 5: Combinar várias raízes de caminho com um caminho filho

Join-Path -Path C:, D:, E:, F: -ChildPath New

C:\New
D:\New
E:\New
F:\New

Esse comando usa Join-Path para combinar várias raízes de caminho com um caminho filho.

Observação

As unidades especificadas por Path devem existir ou a junção dessa entrada falhará.

Exemplo 6: Combinar as raízes de uma unidade do sistema de arquivos com um caminho filho

Get-PSDrive -PSProvider filesystem | ForEach-Object {$_.root} | Join-Path -ChildPath "Subdir"

C:\Subdir
D:\Subdir

Esse comando combina as raízes de cada unidade do sistema de arquivos do PowerShell no console com o Subdir caminho filho.

O comando usa o Get-PSDrive cmdlet para obter as unidades do PowerShell com suporte do provedor FileSystem. A ForEach-Object instrução seleciona apenas a propriedade Root dos objetos PSDriveInfo e a combina com o caminho filho especificado.

A saída mostra que as unidades do PowerShell no computador incluíram uma unidade mapeada para o C:\Program Files diretório.

Exemplo 7: Combinar um número indefinido de caminhos

Join-Path a b c d e f g

a\b\c\d\e\f\g

O AdditionalChildPath parâmetro permite a junção de um número ilimitado de caminhos.

Neste exemplo, nenhum nome de parâmetro é usado, portanto, "a" se liga a Path, "b" a ChildPath e "c-g" a AdditionalChildPath

Parâmetros

-AdditionalChildPath

Especifica elementos adicionais a serem anexados ao valor do parâmetro Path . O ChildPath parâmetro ainda é obrigatório e deve ser especificado também.

Esse parâmetro é especificado com a propriedade que permite unir ValueFromRemainingArguments um número indefinido de caminhos.

Esse parâmetro foi adicionado no PowerShell 6.0.

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

-ChildPath

Especifica os elementos a serem anexados ao valor do Path parâmetro. Caracteres curinga são permitidos. O ChildPath parâmetro é obrigatório, embora o nome do parâmetro ("ChildPath") seja opcional.

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

-Credential

Observação

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.

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

-Path

Especifica o caminho principal (ou caminhos) ao qual o caminho filho é anexado. Caracteres curinga são permitidos.

O valor de determina qual provedor une os caminhos e adiciona os delimitadores de Path caminho. O Path parâmetro é obrigatório, embora o nome do parâmetro ("Path") seja opcional.

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

-Resolve

Indica que esse cmdlet deve tentar resolver o caminho associado do provedor atual.

  • Se curingas forem usados, o cmdlet retornará todos os caminhos que correspondem ao caminho associado.
  • Se nenhum curinga for usado, o cmdlet ocorrerá um erro se o caminho não existir.
Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

String

Você pode canalizar uma cadeia de caracteres que contém um caminho para esse cmdlet.

Saídas

String

Esse cmdlet retorna uma cadeia de caracteres que contém o caminho resultante.

Observações

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

Você pode usar os cmdlets de caminho com vários provedores, incluindo o FileSystem, Registrye Certificate provedores.

Esse cmdlet foi 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.