Partager via


about_Providers

Brève description

Décrit comment les fournisseurs PowerShell fournissent l’accès aux données et aux composants qui ne seraient pas facilement accessibles à la ligne de commande. Les données sont présentées dans un format cohérent qui ressemble à un lecteur de système de fichiers.

Description longue

Les fournisseurs PowerShell sont des programmes .NET qui fournissent l’accès aux magasins de données spécialisés pour faciliter l’affichage et la gestion. Les données s’affichent dans un lecteur et vous accédez aux données d’un chemin d’accès comme vous le feriez sur un disque dur. Vous pouvez utiliser l’une des applets de commande intégrées que le fournisseur prend en charge pour gérer les données dans le lecteur du fournisseur. Vous pouvez également utiliser des applets de commande personnalisées conçues spécialement pour les données.

Les fournisseurs peuvent également ajouter des paramètres dynamiques aux applets de commande intégrées. Ces paramètres sont disponibles uniquement lorsque vous utilisez l’applet de commande avec les données du fournisseur.

Fournisseurs intégrés

PowerShell inclut un ensemble de fournisseurs intégrés qui fournissent l’accès à différents types d’objets.

  • fournisseur d’alias
    • Lecteur - Alias:
    • Types d’objets - System.Management.Automation.AliasInfo
  • fournisseur certificat
    • Lecteur - Cert:
    • Types d’objets - Microsoft.PowerShell.Commands.X509StoreLocation, System.Security.Cryptography.X509Certificates.X509Certificate2
  • fournisseur Environment
    • Lecteur - Env:
    • Types d’objets - System.Collections.DictionaryEntry
  • fournisseur FileSystem
    • Lecteur - C: et autres en fonction du matériel
    • Types d’objets - system.IO.FileInfo, System.IO.DirectoryInfo
  • fournisseur function
    • Lecteur - Function:
    • Types d’objets - System.Management.Automation.FunctionInfo
  • fournisseur Registre
    • Lecteur - HKLM:, HKCU:
    • Types d’objets - Microsoft.Win32.RegistryKey
  • fournisseur de variable
    • Lecteur - Variable:
    • Types d’objets - System.Management.Automation.PSVariable
  • fournisseur WSMan
    • Lecteur - WSMan:
    • Types d’objets - Microsoft.WSMan.Management.WSManConfigContainerElement

Vous pouvez également créer vos propres fournisseurs PowerShell et installer des fournisseurs que d’autres développent. Pour répertorier les fournisseurs disponibles dans votre session, tapez :

Get-PSProvider

Note

Les fournisseurs Certificat, Registreet WSMan WSMan ne sont disponibles que sur la plateforme Windows.

Installation et suppression de fournisseurs

Les fournisseurs sont généralement installés via des modules PowerShell. L’importation du module charge le fournisseur dans votre session. Vous ne pouvez pas désinstaller les fournisseurs intégrés. Vous pouvez désinstaller des fournisseurs chargés par d’autres modules.

Vous pouvez décharger un fournisseur à partir de la session active à l’aide de l’applet de commande Remove-Module. Cette applet de commande ne désinstalle pas le fournisseur, mais elle rend le fournisseur indisponible dans la session.

Vous pouvez également utiliser l’applet de commande Remove-PSDrive pour supprimer n’importe quel lecteur de la session active. Ces données sur le lecteur ne sont pas affectées, mais le lecteur n’est plus disponible dans cette session.

Affichage des fournisseurs

Pour afficher les fournisseurs PowerShell sur votre ordinateur, tapez :

Get-PSProvider

La sortie répertorie les fournisseurs intégrés et les fournisseurs que vous avez ajoutés à la session.

Applets de commande du fournisseur

Les applets de commande suivantes sont conçues pour fonctionner avec les données exposées par n’importe quel fournisseur. Vous pouvez utiliser les mêmes applets de commande de la même façon pour gérer les différents types de données que les fournisseurs exposent. Après avoir appris à gérer les données d’un fournisseur, vous pouvez utiliser les mêmes procédures avec les données de n’importe quel fournisseur.

Par exemple, l’applet de commande New-Item crée un élément. Dans le lecteur C: pris en charge par le fournisseur FileSystem, vous pouvez utiliser New-Item pour créer un fichier ou un dossier. Dans les lecteurs pris en charge par le fournisseur Registry, vous pouvez utiliser New-Item pour créer une clé de Registre. Dans le lecteur Alias:, vous pouvez utiliser New-Item pour créer un alias.

Pour plus d’informations sur l’une des applets de commande suivantes, tapez :

Get-Help <cmdlet-name> -Detailed

Applets de commande ChildItem

Applets de commande de contenu

  • de contenu complémentaire
  • Clear-Content
  • obtenir le Get-Content
  • set-content

Applets de commande d’élément

Applets de commande ItemProperty

Applets de commande d’emplacement

  • Get Location
  • d’emplacement contextuel
  • d’emplacement push
  • set-Location

Applets de commande path

  • join-path
  • convert-path
  • de chemin de fractionnement
  • résoudre le chemin d’accès
  • test-path

Applets de commande PSDrive

Applets de commande PSProvider

  • Get-PSProvider

Affichage des données du fournisseur

Le principal avantage d’un fournisseur est qu’il expose ses données de manière familière et cohérente. Le modèle de présentation des données est un lecteur de système de fichiers.

Le fournisseur vous permet d’afficher, de naviguer et de modifier des éléments dans le magasin de données comme s’ils étaient des données dans un système de fichiers. Le magasin de données est accessible par le nom du lecteur qu’il prend en charge.

Le lecteur est répertorié dans l’affichage par défaut de l’applet de commande Get-PSProvider, mais vous pouvez obtenir des informations sur le lecteur du fournisseur à l’aide de l’applet de commande Get-PSDrive. Par exemple, pour obtenir toutes les propriétés de la fonction : lecteur, tapez :

Get-PSDrive Function | Format-List *

Vous pouvez afficher et parcourir les données d’un lecteur de fournisseur comme vous le feriez sur un lecteur de système de fichiers.

Pour afficher le contenu d’un lecteur de fournisseur, utilisez les applets de commande Get-Item ou Get-ChildItem. Tapez le nom du lecteur suivi d’un signe deux-points (:). Par exemple, pour afficher le contenu du lecteur Alias:, tapez :

Get-Item Alias:

Vous pouvez afficher et gérer les données d’un lecteur à partir d’un autre lecteur en incluant le nom du lecteur dans le chemin d’accès. Par exemple, pour afficher la clé de Registre HKLM\Software dans le lecteur HKLM: à partir d’un autre lecteur, tapez :

Get-ChildItem HKLM:\SOFTWARE\

Pour ouvrir le lecteur, utilisez l’applet de commande Set-Location. N’oubliez pas le signe deux-points lorsque vous spécifiez le chemin du lecteur. Par exemple, pour remplacer votre emplacement par le répertoire racine du lecteur Cert:, tapez :

Set-Location Cert:

Ensuite, pour afficher le contenu du lecteur Cert:, tapez :

Get-ChildItem

Déplacement de données hiérarchiques

Vous pouvez parcourir un lecteur de fournisseur comme vous le feriez pour un disque dur. Si les données sont organisées dans une hiérarchie d’éléments dans des éléments, utilisez une barre oblique inverse (\) pour indiquer un élément enfant. Utilisez le format suivant :

drive:\location\child-location\...

Par exemple, pour remplacer votre emplacement par la clé de Registre HKLM\Software, tapez une commande Set-Location, par exemple :

Set-Location HKLM:\SOFTWARE\

Si un élément du nom complet inclut des espaces, vous devez placer le nom entre guillemets doubles ("). L’exemple suivant montre un chemin complet qui inclut des espaces.

"C:\Program Files\Internet Explorer\iexplore.exe"

Vous pouvez également utiliser des références relatives aux emplacements. Un point (.) représente l’emplacement actuel. Par exemple, si vous êtes dans la clé de Registre HKLM:\Software\Microsoft et que vous souhaitez lister les sous-clés de Registre dans la clé HKLM:\Software\Microsoft\PowerShell, tapez la commande suivante :

Get-ChildItem .\PowerShell

En outre, les points doubles (..) font référence au répertoire ou au conteneur directement au-dessus de votre emplacement actuel. Vous pouvez utiliser des points doubles (..) pour parcourir une hiérarchie de fournisseurs.

PS HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\> cd ..\..\LanmanWorkstation\Parameters
PS HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters>

Domicile du fournisseur

Les fournisseurs disposent également d’un emplacement Home. Cet emplacement est partagé par tous les PSDrives soutenus par le fournisseur. Il peut être récupéré en consultant la propriété Home du fournisseur.

Get-PSProvider | Format-Table Name, Home
Name        Home
----        ----
Registry
Alias
Environment
FileSystem  C:\Users\username
Function
Variable
Certificate

Le fournisseur FileSystem est le seul fournisseur qui a une valeur par défaut pour Home. C’est la même valeur que $HOME. Pour plus d’informations, consultez about_Automatic_Variables.

Vous pouvez définir le répertoire Home d’un fournisseur, pour la session active, à l’aide de sa propriété.

(Get-PSProvider FileSystem).Home = "C:\"

Le caractère ~ peut être utilisé pour représenter le répertoire de base du fournisseur. Si le fournisseur n’a pas d’emplacement Home défini, une erreur s’affiche.

Cert:\> Set-Location ~
Set-Location : Home location for this provider isn't set. To set the home
location, call "(Get-PSProvider 'Certificate').Home = 'path'".
At line:1 char:1
+ Set-Location ~
+ ~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Set-Location],
                              PSInvalidOperationException
...

Recherche de paramètres dynamiques

Les paramètres dynamiques sont des paramètres d’applet de commande ajoutés à une applet de commande par un fournisseur. Ces paramètres sont disponibles uniquement lorsque l’applet de commande est utilisée avec le fournisseur qui les a ajoutés.

Par exemple, le lecteur Cert: ajoute le paramètre CodeSigningCert aux applets de commande Get-Item et Get-ChildItem. Vous ne pouvez utiliser ce paramètre que lorsque vous utilisez Get-Item ou Get-ChildItem dans le lecteur Cert:.

Pour obtenir la liste des paramètres dynamiques pris en charge par un fournisseur, consultez le fichier d’aide du fournisseur. Type:

Get-Help <provider-name>

Par exemple:

Get-Help Certificate

En savoir plus sur les fournisseurs

Bien que toutes les données du fournisseur apparaissent dans les lecteurs et que vous utilisez les mêmes méthodes pour les parcourir, la similarité s’arrête là. Les magasins de données exposés par le fournisseur peuvent être aussi variés que les emplacements Active Directory et les boîtes aux lettres Microsoft Exchange Server.

Pour plus d’informations sur les fournisseurs PowerShell individuels, tapez :

Get-Help <ProviderName>

Par exemple:

Get-Help Registry

Pour obtenir la liste des rubriques d’aide sur les fournisseurs, tapez :

Get-Help * -Category Provider

Voir aussi