about_PSSnapins
Letzte Aktualisierung: Mai 2014
Betrifft: Windows PowerShell 2.0, Windows PowerShell 3.0, Windows PowerShell 4.0, Windows PowerShell 5.0
about_PSSnapins
Beschreibt Windows PowerShell -Snap-Ins und zeigt, wie sie verwendet und verwaltet werden können.
Ein Windows PowerShell -Snap-In ist eine Microsoft .NET Framework-Assembly, die Windows PowerShell-Anbieter bzw. -Cmdlets enthält. Windows PowerShell enthält bereits eine Reihe von grundlegenden Snap-Ins, Sie können jedoch die Leistungsfähigkeit und den Wert von Windows PowerShell erhöhen, indem Sie selbst erstellte oder von dritter Seite erhaltene Snap-Ins hinzufügen, die Anbieter und Cmdlets enthalten.
Wenn Sie ein Snap-In hinzufügen, sind die darin enthaltenen Cmdlets und Anbieter sofort zur Verwendung in der aktuellen Sitzung verfügbar, aber die Änderung betrifft nur die aktuelle Sitzung.
Um das Snap-In zu allen zukünftigen Sitzungen hinzuzufügen, müssen Sie es in Ihrem Windows PowerShell-Profil speichern. Sie können auch das Export-Console-Cmdlet verwenden, um die Snap-In-Namen in einer Konsolendatei zu speichern, die Sie dann in zukünftigen Sitzungen verwenden. Sie können auch mehrere Konsolendateien speichern, jeweils mit einem anderen Satz von Snap-Ins.
Hinweis
Windows PowerShell-Snap-Ins (PSSnapins) stehen in Windows PowerShell 3.0 und Windows PowerShell 2.0 zur Verfügung. In nachfolgenden Versionen werden sie möglicherweise geändert oder entfernt. Zum Packen von Windows PowerShell-Cmdlets und -Anbietern verwenden Sie Module. Informationen zum Erstellen von Modulen und zum Konvertieren von Snap-Ins in Module finden Sie unter „Schreiben eines Windows PowerShell-Moduls“; auf der MSDN-Website unter https://go.microsoft.com/fwlink/p/?LinkID=141556.
Zum Abrufen einer Liste der Windows PowerShell -Snap-Ins auf Ihrem Computer geben Sie ein:
get-pssnapin
Um das Snap-In für jeden Windows PowerShell-Anbieter abzurufen, geben Sie ein:
get-psprovider | format-list name, pssnapin
Zum Abrufen einer Liste der Cmdlets in einem Windows PowerShell-Snap-In geben Sie ein:
get-command -module <snap-in_name>
Die integrierten Snap-Ins sind im System registriert und werden zur Standard-Sitzung hinzugefügt, wenn Sie Windows PowerShell starten. Dagegen müssen Sie Ihre selbst erstellten oder von Dritten erhaltenen Snap-Ins erst registrieren und dann zu Ihrer Sitzung hinzufügen.
Ein Windows PowerShell-Snap-In ist ein Programm, das in einer .NET Framework-Sprache geschrieben und zu einer DLL-Datei kompiliert wurde. Um die Anbieter und Cmdlets in einem Snap-In zu verwenden, müssen Sie das Snap-In zunächst registrieren (zur Registrierung hinzufügen).
Die meisten-Snap-Ins enthalten ein Installationsprogramm (eine EXE- oder MSI-Datei), welches die DLL-Datei für Sie registriert. Wenn Sie ein Snap-In als DLL-Datei erhalten, können Sie es in Ihrem System registrieren. Weitere Informationen finden Sie unter „How to Register Cmdlets, Providers, and Host Applications“ in der MSDN (Microsoft Developer Network)-Library unter https://go.microsoft.com/fwlink/?LinkId=143619 (in englischer Sprache).
Um alle registrierten Snap-Ins in Ihrem System abzurufen oder um zu überprüfen, ob ein Snap-In registriert wurde, geben Sie ein::
get-pssnapin -registered
Verwenden Sie das Add-PsSnapin-Cmdlet, um ein registrierte Snap-In zur aktuellen Sitzung hinzuzufügen. Um z. B. das Microsoft SQL Server-Snap-In zur aktuellen Sitzung hinzuzufügen, geben Sie ein:
add-pssnapin sql
Nachdem der Befehl abgeschlossen ist, sind die Anbieter und Cmdlets aus dem Snap-In in der Sitzung verfügbar. Sie sind jedoch nur in der aktuellen Sitzung verfügbar, wenn Sie sie nicht speichern.
Um ein Snap-In auch in zukünftigen Windows PowerShell-Sitzungen zu verwenden, fügen Sie den Add-PsSnapin-Befehl zu Ihrem Windows PowerShell-Profil hinzu. Oder Sie exportieren die Snap-In-Namen in eine Konsolendatei.
Wenn Sie den Add-PSSnapin-Befehl zu Ihrem Profil hinzufügen, steht er in allen zukünftigen Windows PowerShell-Sitzungen zur Verfügung. Wenn Sie die Namen der Snap-Ins in Ihrer Sitzung exportieren, brauchen Sie die Exportdatei nur dann verwenden, wenn Sie die Snap-Ins benötigen.
Um den Add-PsSnapin-Befehl zu Ihrem Windows PowerShell-Profil hinzuzufügen, öffnen Sie Ihr Profil, fügen den Befehl ein oder geben in ein, und speichern dann das Profil. Weitere Informationen finden Sie unter „about_Profiles“.
Um die Snap-Ins aus einer Sitzung in einer Konsolendatei (Dateiendung psc1) zu speichern, verwenden Sie das Export-Console-Cmdlet. Um zum Beispiel die Snap-Ins der aktuellen Sitzungskonfiguration in die Datei NewConsole.psc1 im aktuellen Verzeichnis zu speichern, geben Sie ein:
Abschnittstext hier einfügen.
export-console NewConsole
Weitere Informationen finden Sie unter „Export-Console“.
Starten Sie zum Verwenden einer Konsolendatei, die das Snap-In enthält, Windows PowerShell (PowerShell.exe) an der Befehlszeile in Cmd.exe oder in einem anderen Windows PowerShell-Sitzung. Verwenden Sie den PsConsoleFile-Parameter, um die Konsolendatei anzugeben, die das Snap-In enthält. Beispielsweise startet der folgende Befehl Windows PowerShell mit der Konsolendatei NewConsole.psc1:
PowerShell.exe -psconsolefile NewConsole.psc1
Die Anbieter und Cmdlets in dem Snap-In sind jetzt für die Verwendung in der Sitzung verfügbar.
Um ein Windows PowerShell-Snap-In aus der aktuellen Sitzung zu entfernen, verwenden Sie das Remove-PsSnapin-Cmdlet. Um z. B. das SQL Server-Snap-In aus der aktuellen Sitzung zu entfernen, geben Sie ein:Abschnittstext hier einfügen.
remove-pssnapin sql
Dieses Cmdlet entfernt das Snap-In aus der Sitzung. Das Snap-In ist weiterhin geladen, aber die Anbieter und Cmdlets, die es unterstützt, sind nicht mehr verfügbar.
In Windows PowerShell 2.0 und in Host-Programmen älteren Formats in Windows PowerShell 3.0 und höher sind die integrierten Befehle, die mit Windows PowerShell installiert werden, in Snap-Ins gepackt, die automatisch zu jeder Windows PowerShell-Sitzung hinzugefügt werden.
Ab Windows PowerShell 3.0 und in Host-Programmen neueren Stils – bei denen Sitzungen mithilfe der InitialSessionState.CreateDefault2-Methode gestartet werden – sind die integrierten Befehle in Module gepackt. Die Ausnahme ist „Microsoft.PowerShell.Core“, das immer als Snap-In angezeigt wird. Das Core-Snap-In wird standardmäßig in jede Sitzung einbezogen. Die integrierten Module werden bei der ersten Verwendung automatisch geladen.
Hinweis
Remotesitzungen, einschließlich Sitzungen, die mit dem New-PSSession-Cmdlet gestartet werden, sind Sitzungen älteren Formats, in denen die integrierten Befehle in Snap-Ins verpackt werden.
Microsoft.PowerShell.Core
Enthält Anbieter und Cmdlets, die zur Verwaltung grundlegender Features von Windows PowerShell verwendet werden. Es umfasst Dateisystem-, Registrierungs-, Alias-, Umgebungs-, Funktions- und Variablen-Anbieter sowie grundlegende Cmdlets wie Get-Help Get-Command und Get-History.
Microsoft.PowerShell.Host
Enthält die Cmdlets, die vom Windows PowerShell-Host verwendet werden, z. B. Start-Transcript und Stop-Transcript.
Microsoft.PowerShell.Management
Enthält Cmdlets wie Get-Service und Get-ChildItem, die zum Verwalten von Windows-basierten Funktionen verwendet werden.
Microsoft.PowerShell.Security
Enthält den Zertifikat-Anbieter und die Cmdlets zur Verwaltung der Windows PowerShell-Sicherheit, wie Get-Acl, Get-AuthenticodeSignature und ConvertTo-SecureString.
Microsoft.PowerShell.Utility
Enthält die Cmdlets, die zum Bearbeiten von Objekten und Daten verwendet werden, z. B. Get-Member, Write-Host und Format-List.
Microsoft.WSMan.Management
Enthält die WSMan-Anbieter und -Cmdlets, die den Windows-Remoteverwaltungsdienst verwalten, z. B. Connect-WSMan und Enable-WSManCredSSP.
Ab Windows PowerShell 3.0 können Sie Ausführungsereignisse für die Cmdlets in Windows PowerShell-Modulen und Snap-Ins aufzeichnen, indem Sie die LogPipelineExecutionDetails-Eigenschaft der Module und Snap-Ins auf „TRUE“ setzen. Weitere Informationen finden Sie unter „about_EventLogs“ (https://go.microsoft.com/fwlink/?LinkID=113224).
Add-PsSnapin
Get-PSSnapIn
Remove-PSSnapIn
Export-Console
Get-Command
about_Profiles
about_Modules
SCHLÜSSELWÖRTER: About_Snapins, About_Snap_ins, About_Snap-ins