📝 Blog  ·  PC Hardware Ratgeber  ·  computer-nach-wunsch.de

PowerShell Einsteiger: Wichtige Befehle und Pipeline

PowerShell für Einsteiger: Öffnen, Verb-Nomen-Befehle, Hilfe, Dateien, Pipeline, Filter, Export, Skripte und sichere Nutzung mit WhatIf unter Windows 11.

📅 23.10.2026 ⏱ 8 Min. Lesezeit 📝 1,485 Wörter
PC Hardware Ratgeber
Autor: Kujtim Dubovci 👁 0 Aufrufe

Die Befehlszeile, die mehr kann als die Eingabeaufforderung

PowerShell ist in Windows 11 eingebaut und verarbeitet nicht Text, sondern Objekte. Damit lassen sich Dateien, Prozesse, Dienste und Netzwerkdaten gezielt abfragen und in Tabellen oder CSV-Dateien ausgeben. Dieser Einstieg erklärt Aufbau, wichtige Befehle, die Pipeline, Skripte und die Sicherheitsregeln.

Alle Befehle in diesem Artikel funktionieren in Windows PowerShell 5.1, das in Windows 11 vorinstalliert ist, und in der aktuellen PowerShell 7. Befehle, die etwas ändern oder löschen, sind besonders markiert. Teste sie zuerst an einem Ordner mit Kopien.

Auf einen Blick: Zehn Befehle zum Start

  1. Hilfe: Get-Help Get-Process zeigt Syntax und Beispiele.
  2. Dateien auflisten: Get-ChildItem, Kurzform dir oder ls.
  3. Prozesse: Get-Process | Sort-Object CPU -Descending | Select-Object -First 10.
  4. Dienste: Get-Service | Where-Object Status -eq "Running".
  5. Netzwerk testen: Test-NetConnection google.de -Port 443.

PowerShell öffnen und die Versionen unterscheiden

Drücke die Windows-Taste, tippe „PowerShell“ und öffne „Windows PowerShell“. Für Befehle mit Systemrechten klickst du mit rechts darauf und wählst „Als Administrator ausführen“. Im Windows Terminal ist PowerShell als Profil eingerichtet, siehe Windows Terminal einrichten. Dort wechselst du über das Pfeilmenü zwischen PowerShell, Eingabeaufforderung und anderen Shells.

Zwei Versionen sind verbreitet. Windows PowerShell 5.1 ist in Windows enthalten und hat ein blaues Fenster. PowerShell 7 ist eine getrennte, neuere Fassung, die du zusätzlich installierst, zum Beispiel mit winget install Microsoft.PowerShell, wie in Winget unter Windows 11 erklärt. Beide laufen nebeneinander. Die Version erfährst du mit $PSVersionTable.PSVersion. Für den Einstieg reicht 5.1.

Aufbau eines Befehls: Verb-Nomen

PowerShell-Befehle heißen Cmdlets und folgen dem Schema Verb-Nomen. Get-Process holt Prozesse, Stop-Process beendet sie, Get-Service zeigt Dienste, Set-Location wechselt den Ordner. Die Verben sind einheitlich: Get liest, Set ändert, New erstellt, Remove löscht, Start und Stop steuern. Wer die Verben kennt, errät viele Befehle.

Parameter beginnen mit einem Bindestrich und können einen Wert tragen: Get-ChildItem -Path C:\Users -Recurse. Groß- und Kleinschreibung spielt bei Cmdlets keine Rolle. Mit der Tabulatortaste vervollständigst du Namen und Parameter. Drückst du Tab mehrmals, wechselt PowerShell durch die Möglichkeiten. Das spart Tipparbeit und Tippfehler.

Viele klassische Namen funktionieren als Alias weiter. dir und ls rufen Get-ChildItem auf, cd Set-Location, cls löscht den Bildschirm. Die Aliasliste zeigt Get-Alias. Die Befehle der Eingabeaufforderung stehen in CMD-Befehle für Einsteiger.

Hilfe finden: Get-Help, Get-Command, Get-Member

  • Get-Help Get-Process -Examples zeigt Beispiele zu einem Befehl. Mit -Full bekommst du die komplette Hilfe, mit -Online öffnet sich die Seite im Browser.
  • Get-Command *Service* listet alle Befehle, die „Service“ im Namen tragen. So findest du Befehle zu einem Thema.
  • Get-Process | Get-Member zeigt, welche Eigenschaften und Methoden die Ergebnisse haben. Das ist der Schlüssel zum Filtern und Auswählen.
  • Update-Help lädt die Hilfedateien nach. Das geht nur mit Administratorrechten und Internetzugang.

Dateien und Ordner verwalten

AufgabeBefehl
Ordnerinhalt anzeigenGet-ChildItem C:\Daten
In einen Ordner wechselnSet-Location C:\Daten
Ordner anlegenNew-Item -ItemType Directory -Path C:\Daten\Neu
Datei kopierenCopy-Item a.txt D:\Backup\
Datei verschiebenMove-Item a.txt D:\Archiv\
Datei lesenGet-Content a.txt
Datei löschenRemove-Item a.txt

Pfade mit Leerzeichen setzt du in Anführungszeichen. Ein Backtick am Zeilenende setzt einen Befehl in der nächsten Zeile fort, wird aber selten gebraucht. Ein Beispiel für Massenumbenennung mit Rename-Item steht in Dateien massenumbenennen. Für automatische Kopien eignet sich auch eine Batch-Datei, siehe Batch-Datei erstellen.

Die Pipeline: Befehle verketten

Das senkrechte Zeichen | reicht das Ergebnis eines Befehls an den nächsten weiter. Anders als in der alten Eingabeaufforderung wandern keine Textzeilen, sondern Objekte mit Eigenschaften. Get-Process | Sort-Object WorkingSet -Descending sortiert die Prozesse nach Speicherverbrauch, ohne dass du Spalten parsen musst. Du kannst beliebig viele Schritte verketten und die Zeile für Zeile aufbauen: erst die Abfrage, dann den Filter, dann die Ausgabe.

Filtern, Sortieren, Auswählen

  • Where-Object filtert: Get-Service | Where-Object Status -eq "Running". Vergleichsoperatoren sind -eq (gleich), -ne (ungleich), -gt (größer), -lt (kleiner), -like (mit Platzhaltern) und -match (Muster).
  • Sort-Object sortiert: Get-ChildItem | Sort-Object Length -Descending.
  • Select-Object wählt Spalten oder die ersten Zeilen aus: Select-Object Name, Length -First 10.
  • Measure-Object zählt und summiert: Get-ChildItem -Recurse | Measure-Object Length -Sum.

Ein praktisches Beispiel: die zehn größten Dateien eines Ordners. Get-ChildItem C:\Users\Name\Downloads -Recurse -File | Sort-Object Length -Descending | Select-Object -First 10 FullName, Length. Dieselbe Aufgabe lösen Programme wie in Speicherplatz analysieren grafisch.

Prozesse, Dienste und Systeminfos

Get-Process zeigt laufende Prozesse. Mit Stop-Process -Name notepad beendest du einen, ähnlich wie im Task-Manager, siehe Programm reagiert nicht. Get-Service listet Dienste, Restart-Service Spooler startet einen Dienst neu (Administratorrechte nötig). Wie Dienste aufgebaut sind, zeigt Windows-Dienste verwalten.

Für Systeminfos eignen sich Get-ComputerInfo, Get-Volume (Laufwerke und freier Platz) und Get-PhysicalDisk (Datenträger). Die Ausgabe von Get-ComputerInfo ist lang, nutze Select-Object CsName, OsName, OsVersion. Weitere Wege, Hardware auszulesen, zeigt PC-Hardware auslesen. Umgebungsvariablen liest du mit $env:USERPROFILE, mehr dazu in Umgebungsvariablen unter Windows 11.

Netzwerkabfragen

Test-NetConnection google.de prüft die Erreichbarkeit, Test-NetConnection google.de -Port 443 testet einen bestimmten Port. Get-NetIPAddress zeigt IP-Adressen, Resolve-DnsName löst Namen auf, Get-NetAdapter listet Netzwerkadapter. Die klassischen Befehle wie ping und ipconfig laufen in PowerShell ebenso, siehe CMD-Befehle für Netzwerk und Internet.

Ergebnisse speichern und exportieren

Mit Export-Csv schreibst du Ergebnisse in eine CSV-Datei, die sich in Excel öffnen lässt: Get-Service | Export-Csv C:\Temp\dienste.csv -NoTypeInformation -Delimiter ";" -Encoding UTF8. Das Semikolon passt zu deutschen Excel-Einstellungen. Out-File speichert Text, Format-Table -AutoSize formatiert die Ausgabe als Tabelle, Out-GridView öffnet ein Fenster mit Filter und Sortierung. Das Zeichen für Umleitung in eine Datei kennst du aus der Eingabeaufforderung, es funktioniert auch hier, schreibt aber je nach Version in anderer Zeichenkodierung.

Variablen und einfache Schleifen

Variablen beginnen mit einem Dollarzeichen: $ordner = "C:\Daten". Sie lassen sich in späteren Befehlen verwenden: Get-ChildItem $ordner. Eine Schleife über Dateien sieht so aus: Get-ChildItem *.jpg | ForEach-Object { Write-Output $_.Name }. Das Objekt $_ steht für das aktuelle Element. Mit if-Bedingungen und foreach baust du daraus kleine Programme. Für den Einstieg reicht es, Befehle zu verketten.

Skripte ausführen und die Ausführungsrichtlinie

Ein Skript ist eine Textdatei mit der Endung .ps1, die Befehle enthält. Beim ersten Start meldet Windows oft, dass die Ausführung von Skripten deaktiviert ist. Das liegt an der Ausführungsrichtlinie. Du prüfst sie mit Get-ExecutionPolicy. Für den eigenen Benutzer ist Set-ExecutionPolicy RemoteSigned -Scope CurrentUser üblich: Lokale Skripte laufen, heruntergeladene brauchen eine Signatur. Setze die Richtlinie nicht auf „Unrestricted“ oder „Bypass“, nur um ein fremdes Skript zum Laufen zu bringen.

Ein Skript startest du im Ordner mit .\skript.ps1. Der vorangestellte Punkt mit Backslash ist nötig, weil PowerShell den aktuellen Ordner nicht automatisch durchsucht. Führe Skripte aus dem Netz nur aus, wenn du sie gelesen und verstanden hast. Hinweise zum sicheren Umgang mit Downloads gibt Programme sicher herunterladen.

Sicher arbeiten: WhatIf, Bestätigung, Administratorrechte

⚠️ Erst simulieren, dann ausführen

Viele Cmdlets kennen den Parameter -WhatIf. Remove-Item C:\Temp\* -Recurse -WhatIf zeigt, was gelöscht würde, ohne etwas zu löschen. Erst wenn die Liste stimmt, entfernst du -WhatIf. Mit -Confirm fragt PowerShell vor jedem Schritt nach.

  • Arbeite nur mit Administratorrechten, wenn der Befehl es verlangt.
  • Wende Remove-Item mit Platzhaltern und -Recurse nie ohne -WhatIf an.
  • Sichere wichtige Daten vorher, siehe Backup-Strategie für den PC.
  • Kopiere keine Befehle aus unbekannten Seiten ungeprüft ins Fenster. Ein einziger Befehl kann ein Skript aus dem Internet laden und ausführen.

Typische Fehlermeldungen

  • Der Begriff ... wird nicht als Name eines Cmdlets erkannt: Tippfehler oder fehlendes Modul. Prüfe die Schreibweise mit Get-Command.
  • Zugriff verweigert: Starte PowerShell als Administrator oder wähle einen Ordner, auf den du Rechte hast, siehe Zugriff verweigert.
  • Skripte sind deaktiviert: Ausführungsrichtlinie anpassen, wie oben beschrieben.
  • Umlaute sind falsch: Speichere die Datei als UTF-8 und gib bei Export-Csv die Kodierung an.
  • Pfad nicht gefunden: Leerzeichen im Pfad, deshalb Anführungszeichen setzen.

Häufige Fragen

Ist PowerShell gefährlich?

Das Werkzeug an sich nicht, aber es hat weitreichende Rechte. Gefährlich sind unbekannte Skripte und Befehle, die du nicht verstehst. Nutze -WhatIf und halte Sicherungen bereit.

Was ist der Unterschied zur Eingabeaufforderung?

Die Eingabeaufforderung verarbeitet Text, PowerShell Objekte. Dadurch lassen sich Ergebnisse filtern und weiterverarbeiten, ohne Text zu zerlegen.

Brauche ich PowerShell 7?

Nicht zwingend. Für die meisten Einsteigeraufgaben genügt die eingebaute Version. PowerShell 7 bringt Neuerungen und läuft plattformübergreifend.

Wie kopiere ich Text im Fenster?

Markiere ihn mit der Maus und drücke Enter oder Strg+C. Mit einem Rechtsklick fügst du Text ein. Im Windows Terminal funktionieren die üblichen Tastenkürzel.

Erst lesen, dann ändern

Mit Get-Befehlen, Pipeline und Where-Object fragst du dein System gezielt ab. Änderungen prüfst du zuerst mit -WhatIf und sicherst vorher deine Daten.

Zum PC-Konfigurator Windows Terminal einrichten Winget unter Windows 11

Kommentare

Noch keine Kommentare. Sei die erste Person, die etwas zu diesem Beitrag schreibt.

Schreibe einen Kommentar