IT

Welche PowerShell-Version habe ich? – PowerShell-Version anzeigen

Auch wenn die PowerShell eine nützliche Skriptsprache ist, kann es nerven Funktionen und Skripte zu finden, die in der selbst genutzten PowerShell-Version nicht funktionieren. Entweder weil sie älter oder neuer sind.

Insbesondere unter älteren Betriebssystem wie Windows 7 oder XP könnte eine alte oder gar keine PowerShell installiert sein. In diesem Artikel erfährst wie du schnell herausfindest welche Version der PowerShell installiert ist.

Schnelle Lösung

Auch wenn es einige Befehle gibt um die PowerShell-Version herauszufinden, ist die folgende Befehlsfolge meiner Meinung nach die beste.

Mit dieser erfährt man sowohl die Versionsnummer der Standard-Windows-PowerShell wie auch der Core-Variante (Version 6 oder 7):

 

Mit Hilfe dieser Abfrage erhält man unabhängig davon, ob man es in der Windows-PowerShell, in der Core-PowerShell oder sogar in der guten alten Kommandozeile eingibt, die Versionsnummern beider Editionen angezeigt:

PowerShell-Versionen
——————–
Std.-Version: 5.1.22000.832
Core-Version: 7.2.6

Ist die Core-Variante nicht installiert sieht es so aus:

PowerShell-Versionen
——————–
Std.-Version: 5.1.22000.832
Core-Version: nicht installiert

Einziges Manko ist derzeit, dass ich noch keinen brauchbaren Weg gefunden habe die Fehlermeldung zu unterdrücken falls die Core-Version nicht installiert ist.

 

PowerShell-Versions-Chaos

Zuerst einmal ist es wichtig zu wissen, dass es mittlerweile zwei verschiedene „Editionen“ der PowerShell gibt. Die „Desktop“-Variante, bzw. „Windows“-Variante, und die Core-Variante, die plattformübergreifend genutzt werden kann. Wem das nichts sagt, der findet in diesem Artikel mehr Infos zu dieser ominösen Core-Edition (verlinken zu PowerShellCore-Artikel).

 

Versionsnummer im Ordnernamen

Übrigens konnte man anhand der Ordnerstruktur noch nie wirklich die PowerShell-Version erkennen. Anhand des Ordners, der eine Versionsnummer enthält, könnte man denken es handelt sich um Version 1.0: 

Versionsnummer im Ordnernamen

Aus irgendeinem Grund hat man bei Microsoft aber gepennt und nie eine Änderung des Ordnernamens durchgeführt. Ich vermute mal wegen irgendwelcher hart-gecodeten Pfade zur Powershell.exe. Es handelt sich um ein gutes Beispiel, warum man Versionsnummern nicht in Datei- oder Ordnernamen aufnehmen sollte. Irgendwann kommt immer der Punkt wo etwas so verstrickt ist, dass man das einfach nicht mehr ändern kann.

Ebenfalls kann man die korrekte Versionsnummer nicht in den Eigenschaften der Exe-Datei sehen:

Versionsnummer in den Eigenschaften der Exe-Datei

Bei der neuen PowerShell hat man aber dazu gelernt und es steht tatsächlich die richtige Versionsnummer in den Datei-Eigenschaften:

Für Version 7 findet man die Exe-Datei in diesem Ordner: „C:\Program Files\PowerShell\7“

 

Welche PowerShell-Version ist in Windows 10/11 enthalten?

Man könnte denken in Windows 10 und Windows 11 sei standardmäßig die aktuellste Version „PowerShell 7“ enthalten.

Stattdessen ist dort grundsätzlich nur die reine Windows-Variante der PowerShell in der letzten veröffentlichten Version 5.1 vorzufinden. Die neue plattformübergreifende Variante muss manuell installiert werden.

Windows-Version vorinstallierte Powershell
Wíndows 7 PowerShell Version 2
Wíndows 10 PowerShell Version 5
Wíndows 11 PowerShell Version 5.1

 

Versionsabfragen per PowerShell

Da es über die GUI keinen Weg zu geben scheint die Versionsnummer herauszufinden, zeige ich euch hier die Möglichkeiten mittels Abfragen in der PowerShell selber:

 

 

Statt des Cmdlets kann man auch einfach eine der zwei folgenden Variablen ausgeben lassen:

Wichtig: Man bekommt nur die Version der aktuell ausgeführten PowerShell angezeigt. Wenn man also parallel Version 7 (ehemals Core) installiert hat, erfährt man diese Versionsnummer nur wenn man die pwsh.exe ausführt und einen der genannten Befehle dort eingibt.

Falls jemand doch einen Weg kennt wie man die Versionsnummer in Windows vernünftig per GUI herausfinden kann, schreibt es bitte gerne in die Kommentare.

 

Tobias Langner

Tobias Langner

Ich arbeite seit mehreren Jahren als Software-Release-Manager, zuvor als IT-Administrator, bin ausgebildeter Fachinformatiker für Systemintegration und Studium-"Pausierer" an der FernUni Hagen. Achtung: Für die Richtigkeit der zur Verfügung gestellten Informationen, Skripte, etc. übernehme ich keine Gewähr. Deren Nutzung geschieht ausdrücklich auf eigene Gefahr!

Alle Beiträge ansehen von Tobias Langner →

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert