Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Brève description
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 accessibles 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 via lequel les conteneurs sont accessibles.
Dans PowerShell, les noms de chemin peuvent être de deux types : chemin d’accès complet et chemin relatif. Un chemin d’accès pleinement qualifié se compose de tous les éléments qui le constituent. La syntaxe suivante montre les éléments d’un chemin d'accès complètement qualifié :
[<provider>::]<drive>:[\<container>[\<subcontainer>...]]\<item>
L’espace réservé <provider> fait référence au fournisseur PowerShell via lequel vous accédez au magasin de données. Par exemple, le fournisseur FileSystem vous permet d’accéder aux fichiers et répertoires sur votre ordinateur. Cet élément de la syntaxe est facultatif et n’est jamais nécessaire car les noms de lecteur sont uniques parmi tous les fournisseurs.
L’espace réservé <drive> 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 lecteur A: et un lecteur C:, le fournisseur FileSystem crée les mêmes lecteurs dans PowerShell.
Après avoir spécifié le lecteur, vous devez indiquer tous les conteneurs et sous-conteneurs contenant 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. De plus, chaque conteneur doit être précédé d’un antislash.
Remarque
PowerShell vous permet d’utiliser l’antislash ou la barre oblique pour assurer la compatibilité avec PowerShell sur d’autres plateformes. Cela fonctionne pour les commandes PowerShell, mais peut ne pas fonctionner lorsqu’elles sont utilisées 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.
Après avoir spécifié le conteneur et les sous-conteneurs, vous devez fournir le nom de l’élément, précédé d’un antislash. Par exemple, le nom complet du chemin d’accès pour le fichier Shell.dll dans le répertoire C:\Windows\System32 est le suivant :
C:\Windows\System32\Shell.dll
Dans ce cas, le lecteur par lequel les conteneurs sont accessibles est C:, le conteneur de niveau supérieur est Windows, le sous-conteneur est System32 et l’élément est Shell.dll.
Dans certaines situations, vous n’avez pas besoin de spécifier un chemin complet et pouvez utiliser plutôt 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 - (
..) : Dossier 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 relatif
.\Systemse résout enC:\Windows\System - Le chemin relatif
..\Program Filesse résout enC:\Program Files - Le chemin relatif
\Program Filesse résout enC:\Program Files - Le chemin relatif
Systemse résout enC:\Windows\System
Lorsque vous utilisez un chemin dans une commande, vous pouvez employer un chemin d’accès complet ou relatif. Par exemple, supposons que votre répertoire de travail actuel soit C:\Windows. La commande Get-ChildItem suivante récupère tous les éléments du répertoire C:\TechDocs :
Get-ChildItem \TechDocs
L’antislash 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 lecteur C:. Parce que le répertoire TechDocs est situé à partir de la racine, il suffit de spécifier l’antislash.
Vous obtenez le même résultat en utilisant le chemin d’accès 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 exemple, supposons que vous avez 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 d’accès du deuxième fichier (C:\TechDocs\Feb\Results.txt) vous permettent de distinguer clairement les deux fichiers.
Prise en charge de l’espace de noms de fichiers Win32
Sur Windows, les applets de commande qui prennent en charge le fournisseur FileSystem prennent également en charge les chemins d’accès qui utilisent le format d’espace de noms Win32 File. Vous ne pouvez utiliser ces chemins qu’avec le paramètre LiteralPath des applets de commande.
Les chemins d’accès dans l’espace de noms Win32 File sont préfixés par \\?\. Le préfixe indique aux API Windows de désactiver l’analyse de chaîne et d’envoyer la chaîne qui suit directement au système de fichiers. Par exemple, si le système de fichiers prend en charge les chemins d'accès longs et les noms de fichiers, vous pouvez dépasser les limites de MAX_PATH qui sont autrement appliquées par les API Windows.
Pour plus d’informations, veuillez consulter Espaces de noms Win32 File Namespaces dans Nommer des fichiers, chemins d’accès, et espaces de noms.