Partager via


Resolve-Path

Résout les caractères génériques inclus dans un chemin d'accès et affiche le contenu de ce dernier.

Syntaxe

Path (Par défaut)

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

LiteralPath

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

Description

L’applet de commande Resolve-Path affiche les éléments et conteneurs qui correspondent au modèle générique à l’emplacement spécifié. La correspondance peut inclure des fichiers, dossiers, clés de Registre ou tout autre objet accessible à partir d’un fournisseur PSDrive.

Exemples

Exemple 1 : Résoudre le chemin du dossier d’accueil

Le caractère tilde (~) est une notation abrégée pour le dossier d’accueil de l’utilisateur actuel. Cet exemple montre Resolve-Path retourner la valeur de chemin d’accès complet.

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

Exemple 2 : Résoudre le chemin d’accès du dossier Windows

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

Lors de l’exécution à partir de la racine du lecteur C:, cette commande retourne le chemin d’accès du dossier Windows dans le lecteur C:.

Exemple 3 : Obtenir tous les chemins d’accès dans le dossier Windows

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

Cette commande retourne tous les fichiers et dossiers du dossier C:\Windows. La commande utilise un opérateur de pipeline (|) pour envoyer une chaîne de chemin d’accès à Resolve-Path.

Exemple 4 : Résoudre un chemin UNC

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

Cette commande résout un chemin d’accès UNC (Universal Naming Convention) et retourne les partages dans le chemin.

Exemple 5 : Obtenir des chemins relatifs

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

Cette commande retourne des chemins relatifs pour les répertoires à la racine du lecteur C:.

Exemple 6 : Résoudre un chemin contenant des crochets

Cet exemple utilise le paramètre LiteralPath pour résoudre le chemin d’accès du sous-dossier Test[xml]. L’utilisation de LiteralPath entraîne le traitement des crochets comme des caractères normaux plutôt qu’une expression régulière.

Resolve-Path -LiteralPath 'test[xml]'

Exemple 7 : Résoudre un chemin d’accès par rapport à un autre dossier

Cet exemple utilise le paramètre RelativeBasePath pour résoudre le chemin d’accès de l’exécutable pwsh par rapport à $Env:TEMP. Lorsque la commande inclut le paramètre de commutateur relative, elle retourne une string représentant le chemin d’accès relatif de $Env:TEMP au fichier exécutable pwsh.

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

Exemple 8 : Résoudre les chemins d’accès pour les éléments masqués

Par défaut, Resolve-Path ne retourne pas d’éléments masqués. Cet exemple utilise le paramètre force pour résoudre les éléments masqués. La commande Get-Item confirme que le dossier .git est masqué. L’utilisation de Resolve-Path sans le paramètre Force retourne uniquement les éléments visibles. L’ajout du paramètre Force retourne tous les éléments, y compris les éléments masqués.

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

Paramètres

-Credential

Spécifie un compte d’utilisateur autorisé à effectuer cette action. La valeur par défaut est l’utilisateur actuel.

Tapez un nom d’utilisateur, tel que User01 ou Domain01\User01, ou passez un objet PSCredential. Vous pouvez créer un objet PSCredential à l’aide de l’applet de commande Get-Credential. Si vous tapez un nom d’utilisateur, cette applet de commande vous invite à entrer un mot de passe.

Ce paramètre n’est pas pris en charge par les fournisseurs installés avec PowerShell.

Propriétés du paramètre

Type:PSCredential
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-Force

Permet à l’applet de commande d’obtenir des éléments qui ne peuvent pas être accessibles par l’utilisateur, tels que les fichiers masqués ou système. Le paramètre Force ne contourne pas les restrictions de sécurité. L’implémentation varie entre les fournisseurs. Pour plus d’informations, voir about_Providers.

Ce paramètre a été ajouté dans PowerShell 7.5-preview.5.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-LiteralPath

Spécifie le chemin d’accès à résoudre. La valeur du paramètre LiteralPath est utilisée exactement comme typé. Aucun caractère n'est interprété en tant que caractère générique. Si le chemin inclut des caractères d’échappement, placez-le entre guillemets simples ('). Les guillemets simples indiquent à PowerShell de ne pas interpréter de caractères comme séquences d’échappement.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:PSPath, DP

Jeux de paramètres

LiteralPath
Position:Named
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-Path

Spécifie le chemin d’accès PowerShell à résoudre. Ce paramètre est obligatoire. Vous pouvez également diriger une chaîne de chemin vers Resolve-Path. Les caractères génériques sont autorisés.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:True
DontShow:False

Jeux de paramètres

Path
Position:0
Obligatoire:True
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:True
Valeur des arguments restants:False

-Relative

Indique que cette applet de commande retourne un chemin relatif.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:False
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

Path
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False
LiteralPath
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-RelativeBasePath

Spécifie un chemin d’accès à partir duquel résoudre le chemin relatif. Lorsque vous utilisez ce paramètre, l’applet de commande retourne l’objet System.Management.Automation.PathInfo pour le chemin résolu.

Lorsque vous utilisez ce paramètre avec le paramètre de commutateur relative, l’applet de commande retourne une chaîne représentant le chemin d’accès relatif de RelativeBasePath à Path.

Ce paramètre a été ajouté dans PowerShell 7.4.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Entrées

String

Vous pouvez acheminer une chaîne contenant un chemin vers cette applet de commande.

Sorties

PathInfo

Par défaut, cette applet de commande retourne un objet PathInfo.

String

Si vous spécifiez le paramètre relative, cette applet de commande retourne une valeur de chaîne pour le chemin résolu.

Notes

PowerShell inclut les alias suivants pour Resolve-Path:

  • Toutes les plateformes :
    • rvpa

Les applets de commande *-Path fonctionnent avec les fournisseurs FileSystem, Registryet Certificate.

Resolve-Path est conçu pour fonctionner avec n’importe quel fournisseur. Pour répertorier les fournisseurs disponibles dans votre session, tapez Get-PSProvider. Pour plus d’informations, voir about_Providers.

Resolve-Path résout uniquement les chemins existants. Il ne peut pas être utilisé pour résoudre un emplacement qui n’existe pas encore.