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 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
Este comando usa Join-Path
para combinar um caminho com um caminho filho.
Como o comando é executado a partir do FileSystem
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 com um caminho filho
Join-Path "C:\win*" "System*" -Resolve
Este 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-ChildItem
o , mas exibe o caminho totalmente qualificado para cada item. Neste comando, os nomes dos Path
parâmetros opcionais são ChildPath
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
Este 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
Este comando usa 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 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
Este 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 suportadas pelo 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íam 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 acrescentados ao valor do parâmetro Path . O ChildPath
parâmetro ainda é obrigatório e também deve ser especificado.
Este parâmetro é especificado com a ValueFromRemainingArguments
propriedade que permite unir um número indefinido de caminhos.
Esse parâmetro foi adicionado no PowerShell 6.0.
Tipo: | String[] |
Position: | 2 |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | False |
-ChildPath
Especifica os elementos a serem acrescentados ao valor do Path
parâmetro. Curingas são permitidos. O ChildPath
parâmetro é necessário, embora o nome do parâmetro ("ChildPath") seja opcional.
Tipo: | String |
Position: | 1 |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | True |
-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 |
-Path
Especifica o caminho principal (ou caminhos) ao qual o caminho filho é acrescentado. Curingas 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.
Tipo: | String[] |
Aliases: | PSPath |
Position: | 0 |
Default value: | None |
Necessário: | True |
Aceitar entrada de pipeline: | True |
Aceitar carateres universais: | 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 errará se o caminho não existir.
Tipo: | SwitchParameter |
Position: | Named |
Default value: | None |
Necessário: | False |
Aceitar entrada de pipeline: | False |
Aceitar carateres universais: | False |
Entradas
Você pode canalizar uma cadeia de caracteres que contenha um caminho para esse cmdlet.
Saídas
Este cmdlet retorna uma cadeia de caracteres que contém o caminho resultante.
Notas
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 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 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
, Registry
e Certificate
provedores.
Este 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.