about_Providers

Kurze Beschreibung

Beschreibt, wie PowerShell-Anbieter Zugriff auf Daten und Komponenten bieten, auf die andernfalls nicht über die Befehlszeile zugegriffen werden kann. Die Daten werden in einem konsistenten Format dargestellt, das einem Dateisystemlaufwerk ähnelt.

Lange Beschreibung

PowerShell-Anbieter sind .NET-Programme, die den Zugriff auf spezielle Datenspeicher ermöglichen, um die Anzeige und Verwaltung zu vereinfachen. Die Daten werden auf einem Laufwerk angezeigt, und Sie greifen auf die Daten in einem Pfad wie auf einem Festplattenlaufwerk zu. Sie können jedes der integrierten Cmdlets verwenden, die der Anbieter unterstützt, um die Daten auf dem Anbieterlaufwerk zu verwalten. Außerdem können Sie benutzerdefinierte Cmdlets verwenden, die speziell für die Daten entwickelt wurden.

Die Anbieter können den integrierten Cmdlets auch dynamische Parameter hinzufügen. Diese Parameter sind nur verfügbar, wenn Sie das Cmdlet mit den Anbieterdaten verwenden.

Integrierte Anbieter

PowerShell enthält eine Reihe von integrierten Anbietern, mit denen Sie auf die verschiedenen Arten von Datenspeichern zugreifen können.

Anbieter Laufwerke OutputType
Alias Alias: System.Management.Automation.AliasInfo
Zertifikat Cert: Microsoft.PowerShell.Commands.X509StoreLocation
System.Security.Cryptography.X509Certificates.X509Certificate2
Umgebung Env: System.Collections.DictionaryEntry
FileSystem C: (*) System.IO.FileInfo
System.IO.DirectoryInfo
Funktion Funktion: System.Management.Automation.FunctionInfo
Registrierung HKLM: HKCU: Microsoft.Win32.RegistryKey
Variable Variable: System.Management.Automation.PSVariable
WSMan WS-Management: Microsoft.WSMan.Management.WSManConfigContainerElement

(*) Die FileSystem-Laufwerke variieren je nach System.

Sie können auch eigene PowerShell-Anbieter erstellen und Anbieter installieren, die andere entwickeln. Geben Sie Zum Auflisten der anbieter, die in Ihrer Sitzung verfügbar sind, Ein:

Get-PSProvider

Hinweis

Die Anbieter Certificate, Registry und WSMan sind nur auf der Windows verfügbar.

Installieren und Entfernen von Anbietern

Anbieter werden in der Regel über PowerShell-Module installiert. Beim Importieren des Moduls wird der Anbieter in Ihre Sitzung geladen. Sie können die integrierten Anbieter nicht deinstallieren. Sie können Anbieter deinstallieren, die von anderen Modulen geladen werden.

Sie können einen Anbieter mithilfe des Cmdlets aus der aktuellen Sitzung Remove-Module entladen. Dieses Cmdlet deinstalliert den Anbieter nicht, macht den Anbieter jedoch in der Sitzung nicht verfügbar.

Sie können auch das Cmdlet verwenden Remove-PSDrive , um alle Laufwerke aus der aktuellen Sitzung zu entfernen. Diese Daten auf dem Laufwerk sind nicht betroffen, aber das Laufwerk ist in dieser Sitzung nicht mehr verfügbar.

Anzeigen von Anbietern

Geben Sie Zum Anzeigen der PowerShell-Anbieter auf Ihrem Computer Ein:

Get-PSProvider

In der Ausgabe werden die integrierten Anbieter und die Anbieter aufgeführt, die Sie der Sitzung hinzugefügt haben.

Die Anbieter-Cmdlets

Die folgenden Cmdlets sind für die Arbeit mit den Daten konzipiert, die von einem beliebigen Anbieter verfügbar gemacht werden. Sie können dieselben Cmdlets auf die gleiche Weise verwenden, um die verschiedenen Datentypen zu verwalten, die Anbieter verfügbar machen. Nachdem Sie gelernt haben, die Daten eines Anbieters zu verwalten, können Sie die gleichen Verfahren mit den Daten eines beliebigen Anbieters verwenden.

Das Cmdlet erstellt z. New-Item B. ein neues Element. Auf dem C: Laufwerk, das vom FileSystem-Anbieter unterstützt wird, können Sie verwenden, New-Item um eine neue Datei oder einen neuen Ordner zu erstellen. Auf den Laufwerken, die vom Registrierungsanbieter unterstützt werden, können Sie verwenden, New-Item um einen neuen Registrierungsschlüssel zu erstellen. Auf dem Alias: Laufwerk können Sie verwenden, um New-Item einen neuen Alias zu erstellen.

Geben Sie Folgendes ein, um ausführliche Informationen zu einem der folgenden Cmdlets zu erhalten:

Get-Help <cmdlet-name> -Detailed

ChildItem-Cmdlets

Inhalts-Cmdlets

Item-Cmdlets

ItemProperty-Cmdlets

Location-Cmdlets

Path-Cmdlets

PSDrive-Cmdlets

PSProvider-Cmdlets

Anzeigen von Anbieterdaten

Der Hauptvorteil eines Anbieters ist, dass er seine Daten auf vertraute und konsistente Weise verfügbar macht. Das Modell für die Datenpräsentation ist ein Dateisystemlaufwerk.

Mit dem Anbieter können Sie Elemente im Datenspeicher anzeigen, navigieren und ändern, als ob es sich um Daten in einem Dateisystem wäre. Auf den Datenspeicher wird über den Namen des unterstützten Laufwerks zugegriffen.

Das Laufwerk wird in der Standardanzeige des Cmdlets Get-PSProvider aufgeführt. Sie können jedoch mithilfe des Cmdlets Informationen zum Anbieterlaufwerk Get-PSDrive abrufen. Um beispielsweise alle Eigenschaften des Laufwerks Function: zu erhalten, geben Sie Folgendes ein:

Get-PSDrive Function | Format-List *

Sie können die Daten auf einem Anbieterlaufwerk genau wie auf einem Dateisystemlaufwerk anzeigen und durch diese verschieben.

Um den Inhalt eines Anbieterlaufwerks anzuzeigen, verwenden Sie die cmdlets Get-Item oder Get-ChildItem Cmdlets. Geben Sie den Namen des Laufwerks gefolgt von einem Doppelpunkt (:). Geben Sie beispielsweise Folgendes ein, um den Inhalt des Laufwerks Alias: anzuzeigen:

Get-Item alias:

Sie können die Daten auf einem beliebigen Laufwerk von einem anderen Laufwerk aus anzeigen und verwalten, indem Sie den Laufwerksnamen in den Pfad eingeben. Um beispielsweise den Registrierungsschlüssel HKLM\Software im Laufwerk HKLM: von einem anderen Laufwerk aus anzeigen zu können, geben Sie Folgendes ein:

Get-ChildItem HKLM:\SOFTWARE\

Um das Laufwerk zu öffnen, verwenden Sie das Set-Location Cmdlet. Merken Sie sich den Doppelpunkt, wenn Sie den Laufwerkpfad angeben. Geben Sie beispielsweise Folgendes ein, um Ihren Speicherort in das Stammverzeichnis des Laufwerks Cert: zu ändern:

Set-Location cert:

Geben Sie dann Zum Anzeigen des Inhalts des Laufwerks Cert: Den folgenden Wert ein:

Get-ChildItem

Verschieben hierarchischer Daten

Sie können ein Anbieterlaufwerk genauso wie ein Festplattenlaufwerk verwenden. Wenn die Daten in einer Hierarchie von Elementen innerhalb von Elementen angeordnet sind, verwenden Sie einen zurücken Schrägstrich (\), um ein untergeordnetes Element anzugeben. Verwenden Sie das folgende Format:

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

Um ihren Speicherort beispielsweise in den Registrierungsschlüssel HKLM\Software zu ändern, geben Sie einen Set-Location ein, z. B.:

Set-Location HKLM:\SOFTWARE\

Wenn ein Element im vollqualifizierten Namen Leerzeichen enthält, müssen Sie den Namen in doppelte Anführungszeichen () umschließen". Das folgende Beispiel zeigt einen vollqualifizierten Pfad, der Leerzeichen enthält.

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

Sie können auch relative Verweise auf Speicherorte verwenden. Ein Punkt (.) stellt die aktuelle Position dar. Wenn Sie sich beispielsweise im Registrierungsschlüssel HKLM:\Software\Microsoft befinden und die Registrierungsunterschlüssel im HKLM:\Software\Microsoft\PowerShell Schlüssel auflisten möchten, geben Sie den folgenden Befehl ein:

Get-ChildItem .\PowerShell

Außerdem bezieht sich doppelte Punkte (..) auf das Verzeichnis oder den Container direkt über Ihrem aktuellen Speicherort. Sie können doppelte Punkte () verwenden,.. um durch eine Anbieterhierarchie zu navigieren.

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

Startseite des Anbieters

Anbieter verfügen auch über einen Home-Standort . Dieser Speicherort wird vom Anbieter PSDrives gemeinsam genutzt. Sie können sie abrufen, indem Sie die Home-Eigenschaft des Anbieters anzeigen.

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

Der FileSystem-Anbieter ist der einzige Anbieter, der über einen Standardwert für Home verfügt. Es ist der gleiche Wert wie $Home. Weitere Informationen finden Sie unter about_Automatic_Variables.

Sie können das Home-Verzeichnis für einen Anbieter für die aktuelle Sitzung mithilfe seiner -Eigenschaft festlegen.

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

Das ~ Zeichen kann verwendet werden, um das Homeverzeichnis des Anbieters zu darstellen. Wenn für den Anbieter kein Startstandort festgelegt ist, wird ein Fehler angezeigt.

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
...

Suchen dynamischer Parameter

Dynamische Parameter sind Cmdlet-Parameter, die einem Cmdlet von einem Anbieter hinzugefügt werden. Diese Parameter sind nur verfügbar, wenn das Cmdlet mit dem Anbieter verwendet wird, der sie hinzugefügt hat.

Beispielsweise fügt das Laufwerk Cert: den CodeSigningCert-Parameter den Cmdlets und Get-Item Get-ChildItem hinzu. Sie können diesen Parameter nur verwenden, wenn Sie oder Get-Item Get-ChildItem auf dem Laufwerk Cert: verwenden.

Eine Liste der dynamischen Parameter, die ein Anbieter unterstützt, finden Sie in der Hilfedatei für den Anbieter. Typ:

Get-Help <provider-name>

Beispiel:

Get-Help certificate

Learning zu Anbietern

Obwohl alle Anbieterdaten auf Laufwerken angezeigt werden und Sie dieselben Methoden verwenden, um sie zu durchziehen, wird die Ähnlichkeit dort beendet. Die datenspeicher, die der Anbieter verfügbar macht, können so unterschiedlich sein wie Active Directory-Speicherorte und Microsoft Exchange Server Postfachs.

Geben Sie Für Informationen zu einzelnen PowerShell-Anbietern Ein:

Get-Help <ProviderName>

Beispiel:

Get-Help registry

Geben Sie Folgendes ein, um eine Liste der Hilfethemen zu den Anbietern zu erhalten:

Get-Help * -Category Provider

Siehe auch