Wer die verschiedenen Versionen der PowerShell und ihre unterschiedlichen Features in den letzten Jahren verfolgt hat, konnte eine stetige Entwicklung von einer einfachen Batch- und Scripting-Sprache hin zu einem vollwertigen Werkzeug zur Administration und Automatisierung der Windows-Systeme verfolgen. Das wird zudem dadurch bestätigt, dass es Microsoft den Administratoren ermöglicht, eine immer größere Anzahl von Systemverwaltungsaufgaben sowohl auf den Windows- als auch auf Anwendungs-Servern wie Exchange mit Hilfe der PowerShell zu erledigen und vor allen Dingen auch zu automatisieren.
PowerShell 4.0 als Teil des WMF 4.0: Nicht auf allen Systemen installierbar
Die aktuelle Version 4.0 der PowerShell steht Anwendern und Administratoren standardmäßig auf den Systemen unter Windows 8.1 und auf dem Windows Server 2012 R2 sofort nach der Installation der Betriebssysteme zur Verfügung. Insgesamt ist die PowerShell Teil des Pakets Windows Management Framework 4.0 (WMF), das neben der Shell auch neue Versionen von WinRM (Windows Remote Management), WMI (Windows Management Instrumentation) und der integrierten Entwicklungsumgebung ISE (Integrated Scripting Environment) beinhaltet.
- PowerShell 4.0
Auf dem Windows Server 2012 R2 ist sie bereits fester Bestandteil des Betriebssystems, wie der Aufruf von $PSVersionTable zeigt: die PowerShell in der Version 4.0. - PowerShell 4.0
Sollten unbedingt mit heruntergeladen werden: Microsoft bietet mit dem Download-Paket des Windows Management Framework 4.0 zusätzliche Informationen an. - PowerShell 4.0
Auch auf einem Windows 7 System mit dem Service Pack 1 lässt sich das WMF 4.0 und damit die aktuelle PowerShell installieren und betreiben. - PowerShell 4.0
Wurde ebenfalls erweitert und verbessert bei der PowerShell 4.0: Die integrierte Entwicklungsumgebung ISE (Integrated Scripting Environment). - PowerShell 4.0
Nach dem Ausführen des Cmdlets „Update-Help“ stehen die kompletten und aktuellen Hilfetexte auf dem System bereit: Leider gibt es sie nur noch in englischer Sprache. - PowerShell 4.0
Der neue standardmäßig zur Verfügung stehende Parameter „-PipelineVariable“ hilft dabei, Informationen zwischenzuspeichern, die sonst beim „Weiterreichen“ in der Pipe verloren gehen würden. Ohne diese Speicherung, wäre hier kein Zugriff über die Eigenschaft „Directory.Basename“ möglich gewesen. - PowerShell 4.0
Kleines, nützliches Cmdlet in der PowerShell 4.0: Mit Get-HashFile lassen schnell und einfach entsprechende Überprüfungen durchführen. - PowerShell 4.0
Ein neues Modul in der PowerShell 4.0: Der Windows Defender kann komplett mit Hilfe der unterschiedlichen Kommandos lokal und auch auf Remote-Systemen gesteuert werden. - PowerShell 4.0
Auch ein Update der Signaturen kann via PowerShell ausgelöst werden, wenn die aktuelle PowerShell 4.0 zum Einsatz kommt.
Für ältere Windows-Versionen steht das Windows Management Framework zum Download bereit. Es kann auf Systemen unter Windows 7 mit Service Pack 1 (in der 32- und 64-Bit-Version) und auf den Server-Systemen Windows Server 2008 R2 mit Service Pack 1 und Windows Server 2012 installiert werden. Auf dem System muss zudem das .NET Framework 4.5 installiert sein.
Es ist nicht möglich, dieses Systemupdate auf einem Rechner unter Windows 8 zu installieren! Microsoft bezeichnet die PowerShell 4.0 und das WMF als integralen Bestandteil von Windows 8.1, der bei Windows-8-Systemen nur durch das (kostenloses) Update auf Windows 8.1 installiert werden kann. Für Systeme, auf denen einige bestimmte Server-Anwendungen ausgeführt werden, rät Microsoft von einer Installation des WMF 4.0 ab. Das gehören neben dem System Center 2012 Configuration Manager (ohne SP1) auch der System Center Virtual Machine Manager (SCCM) 2008 R2 (mit SP1), der Exchange Server in der Version 2007 und schließlich auch die Version 2011 des Windows Small Business Server. Für den Einsatz auf Server-Systemen, auf denen der Exchange- oder SharePoint-Server in der Version 2010 oder 2013 ausgeführt werden, sind bestimmte Kombinationen von Service Packs und UpdateRollup Voraussetzung, um diese Version der PowerShell problemlos verwenden zu können.
Auch wenn der Wechsel der Versionsnummer von "3" auf "4" ein großes Release erwarten lässt, sind die Auswirkungen nicht so umfassend, wie es beim Wechsel von der PowerShell 2.0 der Fall war. Zu den Neuerungen zählen unter anderem:
• die Unterstützung für Workflow- und RemoteDebugging von Scripts,
• verbesserte Funktionen für das Workflowauthoring, die laut Microsoft auch zur Vereinheitlichung mit dem Script-Authoring dienen,
• als allgemeiner Parameter steht nun "-PipelineVariable" zur Verfügung,
• es gibt eine verbesserte Unterstützung zum Herunterladen aktualisierbarer Hilfe unter Verwendung von "Save-Help" und "Update-Help", die auch nun auch für Offline-Systeme verwendet werden kann,
• Verbesserung bei der integrierten Entwicklungsumgebung ISE,
• verbesserte PowerShell Web-Dienste und
• die Desired State Configuration als wichtigste Neuerung für Administratoren.
Hilfedateien sind nun da - wenn sie nachgeladen werden
Wer die PowerShell in der Version 3.0 auf seinem System installiert hatte, kennt vielleicht noch das Problem, das sich bei dem Versuch ergab, die integrierten Hilfedateien zu verwenden: Hatte Microsoft mit der Version 2.0 noch vollständige sogar lokalisierte Hilfedateien automatisch mit auf dem System installiert, so waren ein Großteil dieser Dateien ab Version 3 nachträglich zu installieren.
Microsoft will so auch sicherstellen, dass diese Daten immer aktuell sind. Allerdings gibt es seit dieser Version auch keine lokalisierten Hilfedateien mehr, die Nutzer müssen mit den englischen Texten vorlieb nehmen.
So erscheinen dann auch bei den ersten Versuchen mit dem Cmdlet "Get-Help" keine ausführlichen Hilfetexten. Allerdings funktioniert im Gegensatz zur vorherigen Version der PowerShell nun auch das Nachlader der englischsprachigen Texte auf Systemen in deutscher Sprache. Dazu müssen Sie in einer PowerShell-Konsole mit Administratorrechten den Befehl:
Update-Help
aufrufen. Ohne zusätzliche Parameter überprüft dieses Cmdlet die Versionen der Hilfedateien auf dem System und lädt die aktuellsten Dateien aus dem Netz herunter. Für den Offline-Einsatz ist mit der PowerShell 4.0 nun auch möglich, mit Hilfe des Cmdlets "Save-Help", diese Dateien aus dem Internet herunterzuladen und im Dateisystem abzulegen. Danach können Administratoren diese Dateien mittels "Update-Help" und dem Parameter "-SourcePath <Pfadname>" auch auf Systemen verteilen, die nicht mit dem Internet verbunden.
Es ist auch möglich, den Aufruf von "Update-Help" in das PowerShell-Profile einzubinden, um so immer auf dem aktuellen Stand zu bleiben. Standardmäßig führt die Shell diesen Befehl nur einmal täglich aus, der Parameter "-Force" hebt diese Beschränkung auf.