© DrHitch/Shutterstock.com
PowerShell

1 PowerShell für .NET-Entwickler


Für viele .NET-Entwickler ist die PowerShell noch immer ein Buch mit sieben Siegeln und wird oft in die Sysadmin-Ecke verstoßen. Schade eigentlich, denn die PowerShell hat das Potenzial, den Entwickleralltag um einiges produktiver und angenehmer zu gestalten. Mal schnell sieben Frontend-Webserver neustarten? Eine virtuelle Maschine in Azure hochfahren? Aus den Services im Backend eine HTML-Datei generieren? Ein Back-up einer SQL-Server-Datenbank erstellen? Auf der Webserverfarm einen neuen Application Pool einrichten? Mit dem wachsenden DevOps-Bedürfnis, welches nach dem Verschmelzen von Entwicklung und Betrieb strebt, wird die PowerShell in Zukunft auch für Entwickler stark an Bedeutung gewinnen.

Die PowerShell ist ein Kommandozeileninterpreter für Windows und kann als Alternative zur klassischen Kommandozeile (cmd.exe) betrachtet werden. Seit Windows 7 ist die PowerShell fester Bestandteil des Windows-Betriebssystems. Es geht aber noch besser: In den letzten Jahren hat sich die PowerShell zum Werkzeug der Wahl für die Administration des Betriebssystems und eine Vielzahl von Windows-Produkten und -Anwendungen etabliert. In Folge dessen bringen Produkte wie Team Foundation Server, SQL Server, Exchange Server, BizTalk, SharePoint, IIS, System Center Operations Manager, Microsoft Azure und viele weitere ihre eigenen PowerShell-Skripte bereits mit. Eine umfassende Beschreibung der PowerShell gibt es in Wikipedia [1], eine gute Einführung bietet das kostenfreie E-Book von Keith Hill (in Englisch) [2]. Weitere Informationen sowie vorgefertigte PowerShell-Skripte gibt es auf der offiziellen PowerShell-Seite [3] und in der PowerShell Gallery [4].

Die Möglichkeiten der PowerShell sind beinahe unbegrenzt. Da die PowerShell objektorientiert arbeitet und auf dem .NET Framework basiert, kann die Funktionalität aus sämtlichen .NET-Klassen direkt aus der Shell benutzt werden. Neben .NET bietet die PowerShell Schnittstellen zur Windows Management Instrumentation (WMI) und dem Component Object Model (COM). Weiter kann über so genannte PowerShell-Provider auf das Dateisystem, den Zertifikat-Store oder die Registry zugegriffen werden. Die entsprechenden Berechtigungen vorausgesetzt, können PowerShell-Befehle auch auf Remote-Maschinen ausgeführt werden, ohne dass zuvor eine Remote-Desktop-Verbindung aufgebaut werden muss.

Hilfe, wie gehts los?

Bevor es um die Syntax der PowerShell geht, soll aufgezeigt werden, wie man sich helfen kann, wenn mal nichts mehr geht. Der wichtig...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang