Skip to main content

PowerShell – cool und sehr hilfreich!

von Rainer Vorauer

Jeder der mit Windows zu tun hat, hat sicher schon von PowerShell gehört. PowerShell ist DIE neue CommandShell. Mittlerweile ist ein Teil auch OpenSource (um genau zu sein PowerShell Core), dadurch ist die PowerShell plattformübergeifend. In diesem Blog werde ich mich aber an die Windows PowerShell orientieren.


Es gibt mittlerweile jede Menge Blogs zu allen wichtigen Themen. Zu empfehlen ist auch die offizielle Microsoft Doku. Ich bin mir bewusst, dass es auch schon die Version 6.0 gibt jedoch haben mein Windows 10 und mein Windows Server 2016 noch die Version 5.1. (Um herauszufinden welche Version auf Ihren Rechner installiert ist, muss nur im PowerShell Fenster folgendes eingegeben werden: $PSVersionTable ?)


Wozu kann ich die PowerShell verwenden?

Kurz gesagt alles. Und mit alles meine ich alles. Ich habe mit PowerShell angefangen, da musste ich für ca. 100 Windows Server (fast alle Windows Server 2008R2) SNMP installieren. Ich bin ein fauler Mensch und dadurch wollte ich natürlich nicht immer die GUI durchklicken. Ein damaliger Arbeitskollege brachte mir sehr schnell die Grundlagen von PowerShell bei und ich startete zu skripten.
Das Skript kann ich gerne herzeigen nur es funktioniert nicht mehr mit den aktuellen Servern, da ab 2012 sich die Installationsroutine von Windows-Feature geändert hat.


Welche Möglichkeiten habe ich mit PowerShell?

Ich kann die üblichen Commandlets nehmen oder selber Module skripten. Oder ich nutze die PowerShell Gallery. Es gibt einige Anleitungen im Internet und dadurch will ich nicht anfangen zu erklären, sondern bringe ein Beispiel: Ich bin faul und muss 10 Rechner in der selben Domain neustarten? Ich kann natürlich jeden Rechner einzeln neustarten oder ich nutze die PowerShell.
Wie fange ich an? Ich weiß, dass es ein Cmdlet namens Restart-Computer gibt. Ich weiß auch dass ich mit STRG+Leertaste alle weiter Details eines Commandlets angezeigt bekomme oder ich lese hier nach.
Wie den obigen Link zu entnehmen gibt es ein sehr schönes Beispiel von Microsoft:

Restart-Computer -ComputerName "Server01", "Server02", "Server0X"

Am Schluss will ich noch erwähnen, dass PowerShell im Windows Bereich bald nicht mehr wegzudenken ist. Bei Exchange 2016 oder Hyper-V gibt es einige Funktionen die nur mehr über die PowerShell zu konfigurieren sind.