Admin-Skripte mit der Powershell

[Workshop] Powershell unter Windows 7 - Aufgaben mit Scripts

Administratoren und ambitioniertere Anwender machen es sich bequem und automatisieren immer wiederkehrende Aufgaben mit Skripten. Die PowerShell unter Windows 7 ist weitaus mächtiger als ihre Vorgängerversionen.

  1. [Workshop] Powershell unter Windows 7 - Aufgaben mit Scripts
  2. Win PowerShell-Skriptdateien
  3. Hilfe zu Windows PowerShell
Powershell unter Windows 7

© Archiv

Powershell unter Windows 7

Gealterte DOS- und Linux-Administratoren erinnern sich gerne daran, fast alle Jobs auf der Konsole erledigt zu haben. Die Windows-Konsole gibt es bis dato immer noch, allerdings reicht der Befehlssatz bei Weitem nicht mehr aus, um komplexe Adminaufgaben zu erledigen. Zu diesem Zweck gesellt sich unter Windows 7 die Windows PowerShell hinzu.

Im Gegensatz zur alten Windows-Konsole besitzt die PowerShell eine eigene, sehr mächtige Skriptsprache, die PowerShell Scripting Language, mit der auch derjenige schnell vertraut werden dürfte, der ansonsten mit Programmierung wenig am Hut hat. Den ganz Unbedarften bleibt immer noch das Pendant zu den DOS-Befehlen, die so genannten Cmdlets, sprich: Command-lets.

Bildergalerie

Powershell unter Windows 7
Galerie

Wie gesagt, mit Open End, denn die Windows PowerShell hat außerdem Zugriff auf alle WMI-Klassen (Windows Management Instrumentation), COM-Objekte sowie auf die gesamte Klassenbibliothek des .NET Framework.

Die Windows PowerShell kommt gleich mit zwei Tools daher, einer interaktiven Kommandozeilen-Shell (Windows PowerShell), vergleichbar der Eingabeaufforderung, und einer eigenen Skriptumgebung mit grafischer Benutzeroberfläche (Windows PowerShell ISE = Integrated Scripting Environment).

Verknüpfungen zu beiden finden Sie im Programmverzeichnis des Startmenüs im Ordner Zubehör/Windows PowerShell (Start/Alle Programme/Zubehör/Windows PowerShell).

Einzelne Cmdlets und auch vollständige Skripte können Sie sowohl in der einen wie in der anderen ausführen. Allerdings bietet die Skriptumgebung weit mehr Komfort. Sie verfügt über einen integrierten Debugger, farbliche Syntaxhervorhebung, eine kontextbezogene Hilfe u.v.m. Und sie ermöglicht es, Skripte simultan zu bearbeiten und auszuführen.

Beachten Sie, dass es für einige Befehle erforderlich ist, die Windows PowerShell ISE bzw. die Kommandozeilen-Shell als Administrator auszuführen.

Kleine Helfer - die Cmdlets

Das, was cd, dir & Co. in der Eingabeaufforderung bedeuten, sind in der Windows PowerShell die Cmdlets. Bei diesen handelt es sich um Befehlszeilen-Tools, die bestimmte Funktionen ausführen. Sie können Cmdlets grundsätzlich genauso verwenden wie gewöhnliche Befehle. Groß- und Kleinschreibung spielen keine Rolle.

Geben Sie doch einfach einmal das Cmdlet Get-Process auf der Windows PowerShell-Kommandozeile oder im Befehlsbereich der Windows PowerShell ISE (unteres Fenster, siehe Abbildung unten) ein und drücken Sie die Eingabetaste. Sie erhalten eine Liste aller auf dem lokalen Computer laufenden Prozesse (in der Windows PowerShell ISE blenden Sie das obere Skriptfenster bei Bedarf über die rechte kleine Schaltfläche mit dem nach oben gerichteten Pfeil ein und aus).

Etwaige Parameter geben Sie mit einem führenden Minuszeichen an. Beispielsweise rufen Sie mit dem Befehl get-process -computerName vistapc die Prozesse ab, die auf dem Remotecomputer vistapc laufen - computerName ist hier der Name des Parameters, vistapc dessen Wert. Tipp: Viele Cmdlets besitzen einen Parameter WhatIf. Dieser bewirkt, dass deren Ausführung nur simuliert wird.

Sie können sich so erst von den Auswirkungen eines Befehls im Kontext Ihres Systems überzeugen, bevor Sie das Cmdlet - ohne -WhatIf - tatsächlich ausführen lassen. Die Cmdlets sind als spezielle .NET-Klassen implementiert, welche beim Aufruf nicht nur Werte bzw. Objekte annehmen, sondern auch solche zurückliefern können.

Mit dem Pipe-Zeichen (|) übergeben Sie Rückgabewerte bei Bedarf zur weiteren Verarbeitung an andere Cmdlets oder Sie speichern diese in Variablen, um sie an anderer Stelle wieder zu verwenden.

New-Variable dateGet-Date | Set-Variable dateGet-Variable date | Out-File C:\PCM\date.txtStart-Process notepad.exe C:\PCM\date.txt

Das obige Skript legt eine Variable date an, weist dieser das aktuelle Datum und die aktuelle Uhrzeit zu und schreibt den Wert in eine Textdatei date.txt. Die letzte Anweisung öffnet den Windows-Editor mit der geöffneten Datei date.txt. Cmdlets gibt es insgesamt um die zweihundert. Einen Ausschnitt davon gibt die Tabelle wieder (unter anderem diejenigen, welche in den Beispielen verwendet werden).

Mehr zum Thema

HTML 5
Webgestaltung

Google Web Designer ist spezialisiert auf HTML5. Ein Vorteil dieses Standards ist das einfache Einbinden von Videos mit dem Element video. Wir zeigen…
Wir verraten, wie Sie Fritzboxen und andere Router vor Hackern schützen.
Fritzbox, Asus, Belkin und Co.

Fritzbox, Asus, Belkin oder DLink - die Liste der geknackten Router ist lang. Hacker stahlen Passwörter oder NAS-Daten. So machen Sie Ihren Router…
Wir führen Sie zur eigenen Windows-App - unserem PC-Magazin-RSS-Feed.
C# und XAML

Wir zeigen, wie Sie Windows 8.1 Apps selbst programmieren können. Lernen Sie das App erstellen an Hand unseres Beispiels: dem RSS-Feed von PC…
Windows Tipps & Tricks: Benutzerrechte unter Windows 8.1
Programme richtig installieren

Wir zeigen Ihnen, wie Sie sich unter Windows 8.1 alle Benutzerrechte verschaffen und Programme richtig installieren.
Windows 8: Starbildschirm
Microsoft Project Siena

Erstellen Sie sich selbst eine App für Windows 8, die auf alle Funktionen Ihres Tablets zugreifen kann, inklusive Kamera, Mikrofon und Lautsprecher.…