Partilhar via


Resolve-Path

Resolve os caracteres curinga em um caminho e exibe o conteúdo do caminho.

Sintaxe

Path (Predefinição)

Resolve-Path
    [-Path] <string[]>
    [-Relative]
    [-RelativeBasePath <string>]
    [-Credential <pscredential>]
    [-Force]
    [<CommonParameters>]

LiteralPath

Resolve-Path
    -LiteralPath <string[]>
    [-Relative]
    [-RelativeBasePath <string>]
    [-Credential <pscredential>]
    [-Force]
    [<CommonParameters>]

Description

O cmdlet Resolve-Path exibe os itens e contêineres que correspondem ao padrão curinga no local especificado. A correspondência pode incluir ficheiros, pastas, chaves de registo ou qualquer outro objeto acessível a partir de um fornecedor de PSDrive.

Exemplos

Exemplo 1: Resolver o caminho da pasta base

O caractere til (~) é uma notação abreviada para a pasta base do usuário atual. Este exemplo mostra Resolve-Path retornando o valor de caminho totalmente qualificado.

Resolve-Path ~
Path
----
C:\Users\User01

Exemplo 2: Resolver o caminho da pasta Windows

Resolve-Path -Path "windows"
Path
----
C:\Windows

Quando executado a partir da raiz da unidade de C:, este comando retorna o caminho da pasta Windows na unidade C:.

Exemplo 3: Obter todos os caminhos na pasta Windows

"C:\windows\*" | Resolve-Path

Este comando retorna todos os arquivos e pastas na pasta C:\Windows. O comando usa um operador de pipeline (|) para enviar uma cadeia de caracteres de caminho para Resolve-Path.

Exemplo 4: Resolver um caminho UNC

Resolve-Path -Path "\\Server01\public"

Este comando resolve um caminho UNC (Convenção Universal de Nomenclatura) e retorna os compartilhamentos no caminho.

Exemplo 5: Obter caminhos relativos

Resolve-Path -Path "C:\prog*" -Relative
.\Program Files
.\Program Files (x86)
.\programs.txt

Este comando retorna caminhos relativos para os diretórios na raiz da unidade de C:.

Exemplo 6: Resolver um caminho que contém colchetes

Este exemplo usa o parâmetro LiteralPath para resolver o caminho da subpasta Test[xml]. Usar LiteralPath faz com que os colchetes sejam tratados como caracteres normais em vez de uma expressão regular.

Resolve-Path -LiteralPath 'test[xml]'

Exemplo 7: Resolver um caminho relativo a outra pasta

Este exemplo usa o parâmetro RelativeBasePath para resolver o caminho do executável pwsh relativo a $Env:TEMP. Quando o comando inclui o parâmetro Relative switch, ele retorna um String representando o caminho relativo de $Env:TEMP para o executável pwsh.

$ExecutablePath = Get-Command -Name pwsh | Select-Object -ExpandProperty Source
Resolve-Path -Path $ExecutablePath -RelativeBasePath $Env:TEMP -Relative
..\..\..\..\..\Program Files\PowerShell\7\pwsh.exe

Exemplo 8: Resolver caminhos para itens ocultos

Por padrão, Resolve-Path não retorna itens ocultos. Este exemplo usa o parâmetro Force para resolver itens ocultos. O comando Get-Item confirma que a pasta .git está oculta. Usar Resolve-Path sem o parâmetro Force retorna apenas os itens visíveis. Adicionar o parâmetro Force retorna todos os itens, incluindo itens ocultos.

PS> Get-Item .git -Force

    Directory: D:\Git\PS-Docs\PowerShell-Docs

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d--h-           9/25/2024  4:46 PM                .git

PS> Resolve-Path .git*

Path
----
D:\Git\PS-Docs\PowerShell-Docs\.github
D:\Git\PS-Docs\PowerShell-Docs\.gitattributes
D:\Git\PS-Docs\PowerShell-Docs\.gitignore

PS> Resolve-Path .git* -Force

Path
----
D:\Git\PS-Docs\PowerShell-Docs\.git
D:\Git\PS-Docs\PowerShell-Docs\.github
D:\Git\PS-Docs\PowerShell-Docs\.gitattributes
D:\Git\PS-Docs\PowerShell-Docs\.gitignore

Parâmetros

-Credential

Especifica uma conta de usuário que tem permissão para executar essa ação. O padrão é o usuário atual.

Digite um nome de usuário, como User01 ou Domain01\User01, ou passe um objeto PSCredential. Você pode criar um objeto PSCredential usando o cmdlet . Se você digitar um nome de usuário, esse cmdlet solicitará uma senha.

Esse parâmetro não é suportado por nenhum provedor instalado com o PowerShell.

Propriedades dos parâmetros

Tipo:PSCredential
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Force

Permite que o cmdlet obtenha itens que, de outra forma, não poderiam ser acessados pelo usuário, como arquivos ocultos ou do sistema. O parâmetro Force não substitui as restrições de segurança. A implementação varia entre os fornecedores. Para obter mais informações, consulte about_Providers.

Esse parâmetro foi adicionado no PowerShell 7.5-preview.5.

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:False
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-LiteralPath

Especifica o caminho a ser resolvido. O valor do parâmetro LiteralPath é usado exatamente como digitado. Nenhum caractere é interpretado como um caractere curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples ('). Aspas simples indicam ao PowerShell para não interpretar quaisquer caracteres como sequências de escape.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:PSPath, LP

Conjuntos de parâmetros

LiteralPath
Position:Named
Obrigatório:True
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Path

Especifica o caminho do PowerShell a ser resolvido. Este parâmetro é obrigatório. Você também pode canalizar uma cadeia de caracteres de caminho para Resolve-Path. Caracteres coringa são permitidos.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:True
NãoMostrar:False

Conjuntos de parâmetros

Path
Position:0
Obrigatório:True
Valor do pipeline:True
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Relative

Indica que esse cmdlet retorna um caminho relativo.

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:False
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

Path
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False
LiteralPath
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-RelativeBasePath

Especifica um caminho a partir do qual resolver o caminho relativo. Quando você usa esse parâmetro, o cmdlet retorna o objeto System.Management.Automation.PathInfo para o caminho resolvido.

Quando você usa esse parâmetro com o parâmetro de opção Relative, o cmdlet retorna uma cadeia de caracteres que representa o caminho relativo de RelativeBasePath para Path.

Esse parâmetro foi adicionado no PowerShell 7.4.

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

String

Você pode encaminhar uma cadeia de caracteres que contenha um caminho para este cmdlet.

Saídas

PathInfo

Por padrão, esse cmdlet retorna um objeto PathInfo.

String

Se você especificar o parâmetro Relative, esse cmdlet retornará um valor de cadeia de caracteres para o caminho resolvido.

Notas

O PowerShell inclui os seguintes aliases para Resolve-Path:

  • Todas as plataformas:
    • rvpa

Os cmdlets *-Path funcionam com os provedores FileSystem, Registrye Certificate.

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

Resolve-Path só resolve caminhos existentes. Ele não pode ser usado para resolver um local que ainda não existe.