Join-Path
Combina um caminho e um caminho filho em um único caminho.
Sintaxe
Join-Path
[-Path] <String[]>
[-ChildPath] <String>
[[-AdditionalChildPath] <String[]>]
[-Resolve]
[-Credential <PSCredential>]
[<CommonParameters>]
Description
O cmdlet Join-Path
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
Join-Path -Path "path" -ChildPath "childpath"
path\childpath
Esse comando usa Join-Path
para combinar um caminho com um childpath.
Como o comando é executado do provedor de FileSystem, ele fornece o delimitador \
para unir os caminhos.
Exemplo 2: Combinar caminhos que já contêm separadores de diretório
Join-Path -Path "path\" -ChildPath "\childpath"
path\childpath
Separadores de diretório existentes \
são tratados para que haja apenas um separador entre Path e ChildPath.
Exemplo 3: Exibir arquivos e pastas combinando um caminho com um subcaminho
Join-Path "C:\win*" "System*" -Resolve
Esse comando exibe os arquivos e pastas que são referenciados ao unir o caminho C:\Win\*
e o caminho filho System\*
. Ele exibe os mesmos arquivos e pastas que Get-ChildItem
, mas exibe o caminho totalmente qualificado para cada item. Nesse comando, os nomes de parâmetro opcional Path e ChildPath são omitidos.
Exemplo 4: usar Join-Path com o provedor de Registro do PowerShell
PS HKLM:\> Join-Path -Path System -ChildPath *ControlSet* -Resolve
HKLM:\System\ControlSet001
HKLM:\System\CurrentControlSet
Este comando exibe as chaves do registro na subchave HKLM\System
que incluem ControlSet
.
O parâmetro resolver , tenta resolver o caminho ingressado, incluindo curingas do caminho do provedor atual HKLM:\
Exemplo 5: combinar múltiplos diretórios raiz com um diretório filho
Join-Path -Path C:, D:, E:, F: -ChildPath New
C:\New
D:\New
E:\New
F:\New
Este comando usa o Join-Path
para combinar várias raízes de caminho com um caminho filho.
Nota
As unidades especificadas por Path devem existir ou a junção dessa entrada falhará.
Exemplo 6: combinar a raiz de uma unidade do sistema de arquivos com um caminho secundário
Get-PSDrive -PSProvider FileSystem |
ForEach-Object {$_.Root} |
Join-Path -ChildPath "Subdir"
C:\Subdir
D:\Subdir
Esse comando combina as raízes de cada unidade de sistema de arquivos do PowerShell no console com o caminho filho Subdir
.
O comando usa o cmdlet Get-PSDrive
para obter as unidades do PowerShell compatíveis com o provedor FileSystem. A instrução ForEach-Object
seleciona somente 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 incluem uma unidade mapeada para o diretório C:\Program Files
.
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 parâmetro AdditionalChildPath permite a junção de um número ilimitado de caminhos.
Neste exemplo, nenhum nome de parâmetro é usado, portanto, "a" associa-se a Path, "b" para ChildPath e "c-g" para AdditionalChildPath.
Parâmetros
-AdditionalChildPath
Especifica elementos adicionais a serem acrescentados ao valor do parâmetro Path. O parâmetro ChildPath ainda é obrigatório e deve ser especificado também. Esse parâmetro é especificado com a propriedade ValueFromRemainingArguments
, que permite a junção de um número indefinido de caminhos.
Esse parâmetro foi adicionado no PowerShell 6.0.
Tipo: | String[] |
Cargo: | 2 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-ChildPath
Especifica os elementos a serem acrescentados ao valor do parâmetro Path
. Caracteres curinga são permitidos.
Tipo: | String |
Cargo: | 1 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | True |
-Credential
Nota
Esse parâmetro não é compatível com nenhum provedor instalado com o PowerShell. Para representar outro usuário ou elevar suas credenciais ao executar este cmdlet, use Invoke-Command.
Tipo: | PSCredential |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Path
Especifica o caminho principal (ou caminhos) ao qual o caminho filho é anexado. O valor de Path determina qual provedor une os caminhos e adiciona os delimitadores de caminho. Caracteres curinga são permitidos.
Tipo: | String[] |
Aliases: | PSPath |
Cargo: | 0 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | True |
-Resolve
Indica que esse cmdlet deve tentar resolver o caminho combinado do provedor atual.
- Se você usar curingas, o cmdlet retornará todos os caminhos que correspondem ao caminho unido.
- Se você não usar curingas, o cmdlet retornará um erro se o caminho não existir.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Entradas
É possível direcionar uma cadeia de caracteres que contém um caminho para este cmdlet.
Saídas
Esse cmdlet retorna uma cadeia de caracteres que contém o caminho resultante.
Observações
Os cmdlets que contêm o substantivo Path manipulam nomes de caminho e retornam os nomes em um formato conciso que todos os provedores do PowerShell podem interpretar. Elas foram projetadas para serem usadas onde você deseja exibir todo ou parte de um caminho em um formato específico. Use-os como você usaria Dirname
, Normpath
, Realpath
, Join
ou outros manipuladores de caminho.
É possível usar os cmdlets de caminho com vários provedores, incluindo os provedores FileSystem
, Registry
e Certificate
.
Esse cmdlet foi projetado para funcionar com os dados expostos por qualquer provedor. Para listar os provedores disponíveis na sessão, digite Get-PSProvider
. Para obter mais informações, consulte about_Providers.