Was sind PowerShell Module

Grundlagen

Vom Prinzip sind Powershell Module nur eine Erweiterung, welche eine nach Themen sortierte Sammlung an Befehlen darstellt.

Auflisten der Module

Welche verschiedenen Module die Powershell anbietet, kann man hervorragend dem Befehlsbereich in der Powershell ISE entnehmen. Aber auch auf der Konsole kann man sich alle Powershell Module auflisten lassen.

Get-Module  -ListAvailable

Welche Module geladen sind, hängt natürlich vom installierten Betriebssystem inklusive dessen Rollen & Features ab. Ein Domänencontroller hat natürlich weit mehr Module geladen, als ein Windows 10* Betriebssystem.

Zusammenhang Module & Cmdlet

Möchte man wissen, welches Cmdlet einem bestimmten Modul zugeordnet ist, so kann man sich die Cmdlets ausgeben lassen und in der Source Spalte erhält man das zugehörige Modul. Im Beispiel unten habe ich die Cmdlets gleich nach deren Source sortieren lassen.

Get-Command -CommandType cmdlet | sort-object source
Powershell Module Ausschnitt
Powershell Module Ausschnitt

Die Module beinhalten alle einen bestimmten Satz an Befehle. Welche das sind, liefert entsprechend das folgende Cmdlet.

Get-Command -Module Microsoft.PowerShell.Management
Powershell zugehörige Cmdlets zu den Modulen
Powershell zugehörige Cmdlets zu den Modulen

Wenn man nun das gesuchte Cmdlet gefunden hat, so wäre wahrscheinlich die nächsten Überlegungen. Ist das wirklich das, was ich suche und wie funktioniert dieses Cmdlet.

Nehmen wir einfach mal das Cmdlet Test-Connenction und schauen uns dazu wie folgt die Hilfe an. So findet man doch relativ schnell heraus, wie das Cmdlet anzuwenden ist.

Get-Help Test-Connection
Powershell Help: Test-Connection
Powershell Help: Test-Connection

Schon gleich die Übersicht gibt uns Auskunft darüber, was das mit Hilfe aufgerufene Cmdlet macht. In unserem Fall bewirkt das Cmdlet das gleiche, wie wenn man einen Ping abschickt. Möchte man übrigens zu einem Cmdlet Bespiele angezeigt bekommen, so hängt man einfach an den Aufruf noch -example an.

Get-Help Test-Connection -example

Importieren von Modulen

Module sind vor allem wichtig, wenn man einen Server hat und dieser mit unterschiedlichen Rollen und Features ausgestattet ist. So kann man sich die entsprechenden Module importieren und dessen Befehlssatz verwenden.

Module hierfür wären u. a. DnsServer oder Active Directory.  Z. B. funktioniert das Importieren des Moduls Active Directory folgendermaßen:

Import-Module -Name ActiveDirectory

Fazit

Module sind also nichts anders als Befehlserweiterungen. Anhand der Vielzahl an Modulen ist es fast möglich, das komplette System mit der Powershell zu verwalten. Übrigens ist es seit der Powershell 3.0 möglich, Befehle aus Modulen zu verwenden, auch wenn die Module noch gar nicht geladen wurde. Windows lädt das entsprechende Modul dann automatisch im Hintergrund.

Hervorragend zum Thema Powershell Module sind auch der Artikel von der Powershell Community oder die Bücher: Windows PowerShell 4.0: Das Praxisbuchir?t=itlearner 21&l=as2&o=3&a=3446440704 * und Windows PowerShell 5.0ir?t=itlearner 21&l=as2&o=3&a=B00CUORK2A*.

7c76bf3d40c041d0af622da4a20f7ccf

Steigere dein Wissen

Kostenlose Befehlsreferenzen und E-Books herunterladen

Mehr Informationen zu den kostenlosen Materialien.


Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen