Partager via


about_Path_Syntax

Description courte

Décrit les formats de chemin d’accès complet et relatif dans PowerShell.

Description longue

Tous les éléments d’un magasin de données accessible via un fournisseur PowerShell peuvent être identifiés de manière unique par leurs noms de chemin d’accès. Un chemin d’accès est une combinaison du nom de l’élément, du conteneur et des sous-conteneurs dans lesquels se trouve l’élément et du lecteur PowerShell par lequel les conteneurs sont accessibles.

Dans PowerShell, les noms de chemin peuvent être de l’un des deux types : complet et relatif. Un chemin d’accès complet se compose de tous les éléments qui composent un chemin d’accès. La syntaxe suivante montre les éléments d’un nom de chemin complet :

[<provider>::]<drive>:[\<container>[\<subcontainer>...]]\<item>

L’espace <provider> réservé fait référence au fournisseur PowerShell par l’intermédiaire duquel vous accédez au magasin de données. Par exemple, le fournisseur FileSystem vous permet d’accéder aux fichiers et répertoires de votre ordinateur. Cet élément de la syntaxe est facultatif et n’est jamais nécessaire, car les noms de lecteurs sont uniques entre tous les fournisseurs.

L’espace <drive> réservé fait référence au lecteur PowerShell pris en charge par un fournisseur PowerShell particulier. Dans le cas du fournisseur FileSystem, les lecteurs PowerShell sont mappés aux lecteurs Windows configurés sur votre système. Par exemple, si votre système inclut un A: lecteur et un C: lecteur, le fournisseur FileSystem crée les mêmes lecteurs dans PowerShell.

Après avoir spécifié le lecteur, vous devez spécifier tous les conteneurs et sous-conteneurs qui contiennent l’élément. Les conteneurs doivent être spécifiés dans l’ordre hiérarchique dans lequel ils existent dans le magasin de données. En d’autres termes, vous devez commencer par le conteneur parent, puis le conteneur enfant dans ce conteneur parent, en répétant le modèle pour chaque conteneur enfant. En outre, chaque conteneur doit être précédé d’une barre oblique inverse.

Notes

PowerShell vous permet d’utiliser une barre oblique inverse ou une barre oblique pour la compatibilité avec PowerShell sur d’autres plateformes. Cela fonctionne pour les commandes PowerShell, mais peut ne pas fonctionner lorsqu’elle est utilisée avec des applications natives qui attendent uniquement le séparateur de répertoire natif. Utilisez [System.IO.Path]::DirectorySeparatorChar pour rechercher le caractère utilisé pour votre plateforme.

Une fois le conteneur et les sous-conteneurs spécifiés, vous devez fournir le nom de l’élément, précédé d’une barre oblique inverse. Par exemple, le nom complet du chemin d’accès complet du Shell.dll fichier dans le répertoire est le C:\Windows\System32 suivant :

C:\Windows\System32\Shell.dll

Dans ce cas, le lecteur par lequel les conteneurs sont accessibles est le C: lecteur, le conteneur de niveau supérieur est Windows, le sous-conteneur est System32et l’élément est Shell.dll.

Dans certains cas, vous n’avez pas besoin de spécifier un chemin complet et vous pouvez utiliser un chemin relatif. PowerShell vous permet d’identifier un élément en fonction de son emplacement par rapport à l’emplacement de travail actuel.

PowerShell utilise les séquences de caractères suivantes pour spécifier des chemins relatifs.

  • (.) - Emplacement actuel
  • (..) - Parent de l’emplacement actuel
  • (\) - Racine de l’emplacement actuel

Les exemples suivants sont basés sur le répertoire de travail actuel défini sur C:\Windows.

  • Le chemin d’accès .\System relatif se résout en tant que C:\Windows\System
  • Le chemin d’accès ..\Program Files relatif se résout en tant que C:\Program Files
  • Le chemin d’accès \Program Files relatif se résout en tant que C:\Program Files
  • Le chemin d’accès System relatif se résout en tant que C:\Windows\System

Lorsque vous utilisez un chemin d’accès dans une commande, vous pouvez utiliser un chemin complet ou un chemin relatif. Par exemple, supposons que votre répertoire de travail actuel est C:\Windows. La commande suivante Get-ChildItem récupère tous les éléments du C:\TechDocs répertoire :

Get-ChildItem \TechDocs

La barre oblique inverse indique que la racine du lecteur de l’emplacement de travail actuel doit être utilisée. Étant donné que le répertoire de travail est C:\Windows, la racine du lecteur est le C: lecteur. Étant donné que le TechDocs répertoire se trouve hors de la racine, vous devez spécifier uniquement la barre oblique inverse.

Vous obtenez les mêmes résultats à l’aide du chemin complet :

Get-ChildItem C:\TechDocs

Que vous utilisiez un chemin complet ou un nom de chemin d’accès relatif, un chemin d’accès est important non seulement parce qu’il localise un élément, mais aussi parce qu’il identifie de manière unique l’élément même si cet élément partage le même nom qu’un autre élément dans un autre conteneur.

Par instance, supposons que vous disposez de deux fichiers nommés Results.txt. Le premier fichier se trouve dans un répertoire nommé C:\TechDocs\Jan, et le deuxième fichier se trouve dans un répertoire nommé C:\TechDocs\Feb. Le chemin du premier fichier (C:\TechDocs\Jan\Results.txt) et le chemin du deuxième fichier (C:\TechDocs\Feb\Results.txt) vous permettent de faire clairement la distinction entre les deux fichiers.

Voir aussi