Condividi tramite


Resolve-Path

Risolve i caratteri jolly in un percorso e visualizza il contenuto del percorso.

Sintassi

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

Descrizione

Il Resolve-Path cmdlet visualizza gli elementi e i contenitori che corrispondono al modello con caratteri jolly nella posizione specificata. La corrispondenza può includere file, cartelle, chiavi del Registro di sistema o qualsiasi altro oggetto accessibile da un provider PSDrive .

Esempio

Esempio 1: Risolvere il percorso della cartella home

Il carattere tilde (~) è la notazione abbreviata per la home cartella dell'utente corrente. Questo esempio mostra Resolve-Path la restituzione del valore di percorso completo.

Resolve-Path ~

Path
----
C:\Users\User01

Esempio 2: Risolvere il percorso della cartella di Windows

Resolve-Path -Path "windows"

Path
----
C:\Windows

Quando viene eseguito dalla radice dell'unità C: , questo comando restituisce il percorso della Windows cartella nell'unità C: .

Esempio 3: Ottenere tutti i percorsi nella cartella Windows

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

Questo comando restituisce tutti i file e le cartelle nella C:\Windows cartella . Il comando usa un operatore pipeline (|) per inviare una stringa di percorso a Resolve-Path.

Esempio 4: Risolvere un percorso UNC

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

Questo comando risolve un percorso UNC (Universal Naming Convention) e restituisce le condivisioni nel percorso.

Esempio 5: Ottenere percorsi relativi

Resolve-Path -Path "c:\prog*" -Relative

.\Program Files
.\Program Files (x86)
.\programs.txt

Questo comando restituisce percorsi relativi per le directory nella radice dell'unità C: .

Esempio 6: Risolvere un percorso contenente parentesi quadre

In questo esempio viene utilizzato il parametro LiteralPath per risolvere il percorso della Test[xml] sottocartella. L'uso di LiteralPath comporta la rappresentazione delle parentesi quadre come caratteri normali anziché di un'espressione regolare.

Resolve-Path -LiteralPath 'test[xml]'

Esempio 7: Risolvere un percorso relativo a un'altra cartella

In questo esempio viene utilizzato il parametro RelativeBasePath per risolvere il percorso dell'eseguibile pwsh relativo a $env:TEMP. Quando il comando include il parametro switch Relativo , restituisce un valore String che rappresenta il percorso relativo da $env:TEMP all'eseguibile pwsh .

$ExecutablePath = Get-Command -Name pwsh | Select-Object -ExpandProperty Source
Resolve-Path -Path $ExecutablePath -RelativeBasePath $env:TEMP -Relative

..\..\..\..\..\Program Files\PowerShell\7\pwsh.exe

Parametri

-Credential

Specifica un account utente che dispone delle autorizzazioni per eseguire questa azione. Il valore predefinito è l'utente corrente.

Digitare un nome utente, ad esempio User01 o Domain01\User01, o passare un oggetto PSCredential . È possibile creare un oggetto PSCredential usando il Get-Credential cmdlet . Se si digita un nome utente, questo cmdlet richiede una password.

Questo parametro non è supportato da alcun provider installato con PowerShell.

Tipo:PSCredential
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-LiteralPath

Specifica il percorso da risolvere. Il valore del parametro LiteralPath viene usato esattamente come tipizzato. Nessun carattere viene interpretato come carattere jolly. Se il percorso include caratteri di escape, racchiuderlo tra virgolette singole ('). Le virgolette singole indicano a PowerShell di non interpretare alcun carattere come sequenze di escape.

Tipo:String[]
Alias:PSPath, LP
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Path

Specifica il percorso di PowerShell da risolvere. Questo parametro è obbligatorio. È anche possibile inviare tramite pipe una stringa di percorso a Resolve-Path. I caratteri jolly sono consentiti.

Tipo:String[]
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:True

-Relative

Indica che questo cmdlet restituisce un percorso relativo.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-RelativeBasePath

Specifica un percorso da cui risolvere il percorso relativo. Quando si usa questo parametro, il cmdlet restituisce l'oggetto System.Management.Automation.PathInfo per il percorso risolto.

Quando si usa questo parametro con il parametro Switch Relativo , il cmdlet restituisce una stringa che rappresenta il percorso relativo da RelativeBasePath a Path.

Questo parametro è stato aggiunto in PowerShell 7.4.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

String

È possibile inviare tramite pipe una stringa contenente un percorso a questo cmdlet.

Output

PathInfo

Per impostazione predefinita, questo cmdlet restituisce un oggetto PathInfo .

String

Se si specifica il parametro Relative , questo cmdlet restituisce un valore stringa per il percorso risolto.

Note

PowerShell include gli alias seguenti per Resolve-Path:

  • Tutte le piattaforme:
    • rvpa

I *-Path cmdlet funzionano con i provider FileSystem, Registry e Certificate .

Resolve-Path è progettato per funzionare con qualsiasi provider. Per elencare i provider disponibili nella sessione, digitare Get-PSProvider. Per altre informazioni, vedere about_providers.

Resolve-Path risolve solo i percorsi esistenti. Non può essere usato per risolvere un percorso che non esiste ancora.