Wissen / Cheatsheets / Webentwicklung

PowerShell Cheatsheet für Windows

Nützliche Befehle für Dateien, Prozesse und Diagnose.

Stand: 27.10.2026 · Redaktion: Carl Thorns · Kostenlos und ohne Anmeldung

Dieser Leitfaden führt dich vom konkreten Ausgangsproblem über die praktische Umsetzung bis zur überprüfbaren Abnahme. Jeder Abschnitt nennt eine Methode, ein Beispiel, ein Erfolgskriterium und eine typische Fehlerquelle.

Arbeitsablauf auf einen Blick

1. Umgebung prüfen

Ermittle PowerShell-Version, Pfade und Befehlsauflösung vor Änderungen.

Praxisbeispiel
$PSVersionTable.PSVersion Get-Command php -All Get-Location
So erkennst du, dass es funktioniert: Ausgeführte Programme und Versionen sind eindeutig.
Typischer Fehler: Alias und ausführbare Datei verwechseln.

2. Dateien finden

Nutze Get-ChildItem mit Filter und gezieltem Pfad. Behandle Zugriffsfehler bewusst.

Praxisbeispiel
Get-ChildItem D:\ -Filter php.exe -Recurse -ErrorAction SilentlyContinue
So erkennst du, dass es funktioniert: Trefferliste enthält nachvollziehbare Fundorte.
Typischer Fehler: Ungefilterte rekursive Suche auf allen Laufwerken ohne Bedarf.

3. Prozesse und Dienste

Lese Prozess- und Dienststatus zunächst nur aus; Änderungen nur mit ausreichenden Rechten.

Praxisbeispiel
Get-Process php -ErrorAction SilentlyContinue Get-Service | Where-Object Status -eq Running
So erkennst du, dass es funktioniert: Betroffene Prozesse sind vor Stop/Restart identifiziert.
Typischer Fehler: Prozesse nach ungenauem Namensmuster beenden.

4. Fehlerbehandlung

Nutze try/catch und -ErrorAction Stop für kritische Operationen.

Praxisbeispiel
try { Get-Item C:\missing -ErrorAction Stop } catch { Write-Warning $_.Exception.Message }
So erkennst du, dass es funktioniert: Fehler werden sichtbar behandelt.
Typischer Fehler: Fehler mit SilentlyContinue dauerhaft verbergen.

5. Sichere Automatisierung

Teste destruktive Befehle mit -WhatIf, protokolliere Ergebnisse und setze keine Passwörter im Skript fest.

Praxisbeispiel
Remove-Item .\temp -Recurse -WhatIf
So erkennst du, dass es funktioniert: Vor produktiver Ausführung ist der Effekt nachvollziehbar.
Typischer Fehler: Ungeprüfte Löschskripte automatisiert starten.

Abnahmeprotokoll für die Praxis

Nutze die folgenden Punkte als dokumentierbare Abnahme. Trage bei jedem Punkt Datum, getestete URL beziehungsweise System, Ergebnis und gegebenenfalls einen offenen Befund ein.

  1. Abnahmekriterium: Ausgeführte Programme und Versionen sind eindeutig.

  2. Abnahmekriterium: Trefferliste enthält nachvollziehbare Fundorte.

  3. Abnahmekriterium: Betroffene Prozesse sind vor Stop/Restart identifiziert.

  4. Abnahmekriterium: Fehler werden sichtbar behandelt.

  5. Abnahmekriterium: Vor produktiver Ausführung ist der Effekt nachvollziehbar.

Fachquellen und weiterführende Dokumentation

Diese Primärquellen dienen zur Vertiefung und zur Prüfung versionsabhängiger Details. Bei rechtlichen Themen ersetzt der Leitfaden keine individuelle Rechtsberatung.

Praxisvertiefung: Diagnosebefehle mit kontrollierter Wirkung

Beginne mit Get-Command, Get-Help und Get-Process. Prüfe vor Massenänderungen mit -WhatIf, sofern das Cmdlet es unterstützt.

Technische Umsetzung

Beispiele: Get-ChildItem -Path D:\Projekte -Recurse -File | Where-Object Extension -eq ".php"; Get-Command php -All; winget upgrade --include-unknown.

So überprüfst du das Ergebnis

Achte auf Pfade mit Leerzeichen, Administratorrechte und unterschiedliche PowerShell-Versionen. Skripte zuerst in einer Testumgebung ausführen.