PowerShell vs. CMD
Lernziele
- Den Unterschied zwischen Textausgabe (CMD) und Objektausgabe (PowerShell) erklären
- Windows PowerShell 5.1 und PowerShell 7 unterscheiden und die laufende Version prüfen
CMD und PowerShell sind die beiden Kommandozeilen von Windows. CMD ist für einfache Aufgaben gedacht und gibt Text aus. PowerShell gibt Objekte aus, die Eigenschaften und Methoden besitzen. Dieser Unterschied prägt den ganzen Kurs.
1. Vergleich
Abschnitt betitelt „1. Vergleich“| Eigenschaft | PowerShell | CMD |
|---|---|---|
| Erstveröffentlichung | 2006 | 1987 |
| Plattformen | Windows, macOS, Linux (ab PowerShell 7) | nur Windows |
| Ausgabe | Objekte | Text |
| Skripte | .ps1, voller Zugriff auf .NET |
.bat/.cmd, eingeschränkt |
| Pipeline | Objekte werden weitergereicht | Text wird weitergereicht |
| Hilfe | Get-Help, Update-Help |
help, /? |
| Verwaltung | Cmdlets für Dienste, Dateien, AD, Azure, Microsoft 365 u. v. m. | nur klassische Konsolenprogramme |
2. Zwei PowerShells auf einem Windows-Rechner
Abschnitt betitelt „2. Zwei PowerShells auf einem Windows-Rechner“Auf Windows gibt es heute zwei Varianten, die nebeneinander laufen:
| Windows PowerShell 5.1 | PowerShell 7 | |
|---|---|---|
| Programm | powershell.exe |
pwsh.exe |
| Basis | .NET Framework 4.x | modernes .NET (aktuell .NET 10, LTS) |
| Auslieferung | Teil von Windows, bekommt nur noch Sicherheitsupdates | separat installiert, wird aktiv weiterentwickelt |
| Plattformen | nur Windows | Windows, macOS, Linux |
| Typischer Einsatz | Bestandsskripte, ältere Module | neue Skripte, Automatisierung, Cloud |
Beide kennen dieselben Grundlagen. In diesem Kurs arbeiten wir mit PowerShell 7. Wo sich etwas zwischen den Versionen unterscheidet, steht ein Hinweis.
Welche Version läuft gerade?
$PSVersionTable$PSVersionTable.PSVersion3. Ein Beispiel: Dateien auflisten
Abschnitt betitelt „3. Ein Beispiel: Dateien auflisten“CMD:
dir C:\UsersPowerShell:
Get-ChildItem -Path C:\Usersdir gibt es auch in PowerShell. Es ist ein Alias für Get-ChildItem (mehr dazu im Kapitel über Aliase). Das Ergebnis besteht aus Objekten und nicht aus Text. Du kannst deshalb direkt nach Größe, Datum oder Name sortieren.

Zusammenfassung
Abschnitt betitelt „Zusammenfassung“- PowerShell arbeitet mit Objekten, CMD mit Text.
- Auf Windows existieren Windows PowerShell 5.1 (
powershell.exe) und PowerShell 7 (pwsh.exe). - Mit
$PSVersionTablesiehst du, welche Version du gerade benutzt.