Was ist die PowerShell?

Die PowerShell von Microsoft ist ein Tool zur Automatisierung, Konfiguration und Verwaltung von IT-Systemen, die wir nahtlos in Server-Eye integriert haben. Direkt im Browser erscheint der Kommandozeilen-Interpreter und die mächtige Skriptsprache erlaubt die einfache Administration beliebiger Rechner über das Internet.

Die PowerShell hat eine lange Entwicklungsgeschichte hinter sich bis sie  zum universellen „Schweizer Taschenmesser“ gereift ist und damit zu „Admins Liebling“ wurde.

 

Die erste Shell mit Microsoft DOS

Einige Admin-Veteranen werden sich erinnern. Die Geschichte des blinkenden Cursors in einer Kommandozeile (CMD) begann mit dem Betriebssystem MS-DOS 4.0.

Microsoft hat mit dieser Version im Jahr 1988 die erste Shell veröffentlicht. „Shell“ bedeutet genau übersetzt „Muschelschale“. In der IT wird damit aber eine Schnittstelle zwischen Computer und Benutzer bezeichnet. Die integrierte Kommandozeile (CMD) hat viele Jahrzehnte das Admin-Herz mit seinem nützlichen Befehlssatz erfreut.

Microsoft hat im Laufe der Zeit einige weitere Shells entwickelt. Im Jahr 2003 wurde zum Beispiel die Shell „Monad“ vorgestellt, die auf der Windows-Plattform .NET basierte. Anstatt Text konnten nun Objekte übergeben werden und ausführbare Skripte beschleunigten die tägliche Arbeit. Monad hat mit den vielen Verbesserungen das Admin-Leben stark vereinfacht.

 

Windows Exchange Unterstützung von Anfang an

Die neue Shell hat so gut funktioniert, dass drei Jahre später die Aufnahme in die offizielle Microsoft Welt erfolgte. Monad wurde dabei in PowerShell umbenannt. Mit dem Start im Jahr 2007 konnten damit sofort Exchange-Server verwaltet und konfiguriert werden. Zwei Jahre später hat man die Administration auf alle Microsoft Server Produkte erweitert.

Das war der erste große Durchbruch für die neue PowerShell. Damit wurde sie zum wichtigsten Werkzeug der Windows-Admins.

 

Die Vorteile der PowerShell

Im Gegensatz zur alten CMD verwendet die PowerShell cmdlets (gesprochen „Commandlets“). Das sind in sich geschlossene Programmierungsobjekte, die eine einfache Administration ermöglichen. Weiterhin können mit den Verkettungszeichen „Pipes“ mehrere cmdlets zu komplexen Skripten verbunden werden und dabei können Parameter sowie Daten übergeben werden.
Die Skriptsprache der alten CMD war hinsichtlich der Funktionen deutlich eingeschränkt. Die rivalisierenden Shells aus dem Linux/Unix-Bereich waren damals viel leistungsstärker. Die neue PowerShell mit dem erweiterten Funktionsumfang hat die Nachteile beseitigt und schloss zur Konkurrenz auf.

 

Die PowerShell für alle Plattformen

Microsoft hat sich viele Jahre sehr schwer getan, andere Plattformen und Betriebssysteme zu unterstützen. Genau genommen hat man viel Energie in die Abkapselung und in den Boykott investiert.

Legendär ist das Zitat aus dem Jahr 2001 vom ehemaligen CEO Steve Balmer: „Linux ist ein Krebsgeschwür.“ Die ablehnende Haltung kann man nicht drastischer formulieren.

Mit dem Wechsel an der Spitze des Unternehmens hat sich diese Strategie radikal geändert. Auslöser war unter anderem der neue CEO Satya Nadella, der seit dem Jahr 2014 das Unternehmen leitet. Open Source Projekte wurden seitdem unterstützt und der bisherige Umgang mit Linux wurde als „großer Fehler“ eingeräumt.

Der Kauf von GitHub, eine Entwicklungsplattform für Open Source Software, war ein weiterer starker Beweis, dass Microsoft eine Kehrtwende einlegt. Der Kaufpreis von 7,5 Milliarden Dollar bestätigte eindrucksvoll die ernsten Absichten.

Auch die Weiterentwicklung der PowerShell hat diese neue Strategie im Jahr 2018 zu spüren bekommen. PowerShell 6.0 war als Konsequenz die erste plattformübergreifende, quelloffene Version der PowerShell für Windows, MacOS und Linux. Die Basis war nun nicht mehr .NET aus der Windows-Welt, sondern die quelloffene Plattform .NET CORE.

Als kleiner Nachteil erwies sich zu Beginn der reduzierte Funktionsumfang zur bisherigen Windows-Version. Die Kompatibilität hatte eben absoluten Vorrang. Schritt für Schritt werden aber fehlende Funktionen bei neuen Versionen nachgeliefert.

Die Open-Source-Entwicklung war damit der zweite große Durchbruch, denn jetzt konnten wirklich alle relevanten Betriebssysteme mit einer Shell administriert werden. Das hat noch einmal die Nutzerzahlen erhöht und für eine stärkere Verbreitung gesorgt.

 

Die aktuelle Version: PowerShell 7.1

In der 14-jährigen Entwicklung sind wir mittlerweile bei der Version 7.1 angelangt. Die neue Version enthält mehrere Fehler-Korrekturen, Verbesserungen und neue Operatoren. Als Basis steht die ebenfalls neue Version .NET 5 bereit, welche ebenfalls als freie und quelloffene Plattform entwickelt wurde. Die Version 7.1 soll nun der Windows PowerShell 5.1 bezüglich des Funktionsumfangs fast ebenbürtig sein. Mit mehr als 1500 Befehlen sind der Kreativität eines Admins kaum Grenzen gesetzt. Es fehlen nur noch rund 90 Befehle aus der ehemaligen Windows-Version. Aber auch diese werden in weiteren Versionsschritten nachgeliefert.

 

Die PowerShell in der Praxis

Die Möglichkeiten der Administrationen sind mit der PowerShell unglaublich vielfältig.  Die Benutzung unterliegt einer einfachen einheitlichen Syntax. Die Skripte sind leicht zu lesen und einfach anpassbar. Dabei muss der Code nicht umständlich kompiliert werden, wie bei anderen Programmiersprachen.

Wir stellen in unserem OCC (Online-Control-Center) einige Beispielskripte zur Verfügung, die sofort einsetzbar sind und den Start mit der PowerShell erleichtern. Die Skripte werden direkt in Server-Eye ausgeführt.

Auf Speicherplatzebenen ist es möglich, die Dateien auf volllaufenden Festplatten zu organisieren, sodass beispielsweise nicht mehr benötigte oder temporäre Dateien gelöscht werden, bevor keine Schreibvorgänge mehr möglich sind bzw. eventuell sogar Datenverluste auftreten.

Das Überwachen und Neustarten von Windows-Diensten ist ebenfalls sehr einfach möglich.

Die Administration von Exchange-Servern ist ebenso ein weit verbreiteter Anwendungsfall. Postfächer, Ordner oder Kontakte können angelegt, geändert oder gelöscht werden.

Das alles passiert direkt im Browser, es sind keine weiteren Installationen notwendig. So kannst Du von jedem Ort der Welt Deine IT-Landschaft administrieren.

Für uns ist die PowerShell ein universelles und unersetzliches Werkzeug unserer täglichen Arbeit. Eben Admins Liebling.

 

 

4.9/5 - (22 votes)