06.08.2009, 12:20

Hermann Apfelböck

Windows 7 Funktion

Die Powershell in Windows 7

Die mit Windows 7 ausgelieferte Windows Powershell 2.0 ist das bisher Beste, was die neue Kommando-Shell bieten kann. Powershell 2.0 ist generell und auch in der grafischen ISE-Variante (Integrated Scripting Environment) deutlich schneller geworden und wurde außerdem funktional erweitert. Ein Admin- und Profi-Tool bleibt die Powershell aber weiterhin.
Laut Microsoft ist die Windows Powershell eine interaktive Kommandoshell und Skriptsprache, die speziell für die Systemverwaltung, also für Administratoren entwickelt wurde. Das trifft den Kern der Sache, da sich typische Anwender mit der Syntax der komplexen Powershell kaum anfreunden werden. Schnelle Ergebnisse bei der interaktiven Nutzung sind selbst dann nicht zu erwarten, wenn der Benutzer mit Kommandoshells wie CMD.exe oder Unix-Shells vertraut ist. Eine allgemeine Einführung und zahlreiche Beispiele finden Sie in unserem Praxis-Wiki.
Grundlegender Unterschied der Windows Powershell (früher 'Monad') zu allen bekannten Kommandoshells ist die Verwendung von Objektvariablen. Ein Beispiel: Die Cmd.exe zeigt nach
sc query
eine Textliste der Windows-Dienste an; die lässt sich speichern und - relativ mühsam - mit Stringverarbeitung filtern oder sortieren. Die Powershell hingegen speichert nach
$a=Get-Service
in der Variablen $a sämtliche Eigenschaften aller Windows-Dienste. Danach lässt sich mit Pipe-Kommandos (|) mühelos jede Instanz (also in diesem Beispiel jeder einzelne Dienst), aber auch jede Eigenschaft einzeln abrufen. Der Benutzer muss nur die verfügbaren Eigenschaften des Objekts kennen:
$a | select displayname
Dieser Befehl gibt den beschreibenden Namen aller Dienste zurück. Der benutzte Select-Filter dient nur der Ausgabe, die Variable enthält daher weiter alle Eigenschaften. Ein nachfolgender Befehl
$a | select name, displayname, status, servicesdependedon
zeigt nun diese vier Eigenschaften der Dienste. Um alle Eigenschaften eines bestimmten Dienstes auszugeben, wäre folgender Befehl geeignet:
$a | where {$_.displayname -like "*search*"}|select *
Fertige Lösungen nutzen: Die Windows Powershell kann alles - Dateiaktionen, Registry-Zugriff, Netzwerk-Verwaltung, Event-Verwaltung, Remote-Zugriff. Es ist zum Teil verblüffend, welche Ergebnisse ein einziges Kommando mit einigen Pipe-Filtern erzielen kann. Von diesen Möglichkeiten werden auch Powershell-Unkundige künftig profitieren, indem sie komplette (PS1) Scripts einfach übernehmen. Powershell-Scripting ist erst im Kommen und wird sich frühestens mit Windows 7 und Windows Server 2008 R2 durchsetzen - wenn überhaupt.
Diskutieren Sie mit anderen Lesern über dieses Thema:
Windows 8: Alle Informationen
Windows 8
Alle Details

In diesem Special lesen Sie alle Details zu den geplanten Funktionen von Windows 8. mehr

Windows 7: Alle Informationen
Windows 7
Alle Details

In diesem Windows-7-Ratgeber lesen Sie alle Details zu allen Windows-7-Funktionen. mehr

217338
Content Management by InterRed