PowerShell lernen Schritt für Schritt – Teil 5: Erste Skript mit Fehlerbehandlung

Aktualisiert am 14.11.2026 · Lesezeit ca. 6 Min. · Niveau: Anfänger · von Viktor Tribus, IT-Tribus Nideggen

In den vorherigen Teilen dieser Serie haben Sie gelernt, wie man Bedingungen und Schleifen in PowerShell nutzt. Nun werden wir uns auf die Erstellung eines nützlichen Skripts mit Fehlerbehandlung konzentrieren. Dieser Teil ist entscheidend, um robuste und zuverlässige Skripte für Ihre tägliche Arbeit zu erstellen.

PowerShell ist eine leistungsstarke Shell- und Skriptsprache, die Ihnen das Schreiben von Skripts erleichtert, die automatisierte Aufgaben ausführen. In diesem Teil werden Sie lernen, wie man Fehler effektiv behandelt, um sicherzustellen, dass Ihre Skripte nicht aufgrund von unbeabsichtigten Fehlern abstürzen.

Worum es geht und wann Sie das brauchen

In der täglichen Arbeit mit PowerShell können verschiedene Arten von Fehlern auftreten. Zum Beispiel, wenn ein Pfad fehlt oder eine Ressource nicht verfügbar ist, kann dies dazu führen, dass Ihr Skript unerwartet abbricht und möglicherweise wichtige Aufgaben nicht durchführt. Mit dem try-catch-Konstrukt können Sie solche Fehler effektiv behandeln und sicherstellen, dass Ihre Skripte auch bei Problemen weiterhin funktionieren.

Typische Situationen, in denen Sie das benötigen, sind automatisierte Backups oder die Verwaltung von Netzwerkelementen. Ohne ordnungsgemäße Fehlerbehandlung könnten solche Aufgaben fehlschlagen und zu schwerwiegenden Konsequenzen führen.

Voraussetzungen

  • PowerShell-Version: Sie sollten mindestens PowerShell 5.1 verwenden, da ältere Versionen möglicherweise nicht alle Funktionen unterstützen. Überprüfen Sie Ihre aktuelle Version mit dem Befehl $PSVersionTable.PSVersion.
  • Rechte: Je nach Aufgabe benötigen Sie möglicherweise Administratorrechte. Öffnen Sie das PowerShell-Fenster als Administrator, indem Sie im Startmenü auf „PowerShell (Admin)“ klicken.
  • Werkzeuge: Sie benötigen eine Text-Editorsoftware wie Notepad++ oder Visual Studio Code zum Erstellen und Bearbeiten von Skriptdateien. Sie können PowerShell selbst auch als Editor verwenden, indem Sie den Befehl notepad script.ps1 eingeben.

Schritt-für-Schritt-Anleitung

Schritt 1: PowerShell-Editor öffnen und Skript erstellen

Öffnen Sie das PowerShell-Fenster als Administrator. Geben Sie den Befehl notepad script.ps1 ein, um einen neuen Texteditor mit einem leeren Skript zu öffnen.

Schritt 2: try-Block hinzufügen

Im Editor fügen Sie den folgenden Code hinzu:

PowerShell (als Administrator)
try 
catch 

Der try-Block enthält den Code, dessen Ausführung Sie überwachen möchten. Wenn ein Fehler auftritt, wird der catch-Block ausgeführt.

Schritt 3: Befehle im try-Block hinzufügen

Fügen Sie in den try-Block einen Befehl hinzu, der möglicherweise fehlschlagen kann. Zum Beispiel:

PowerShell (als Administrator)
try 
catch 

Der Befehl Get-Content C:\nonexistentfile.txt versucht, den Inhalt einer nicht existierenden Datei zu lesen. Dies wird einen Fehler verursachen.

Schritt 4: catch-Block hinzufügen und Fehlerbehandlung implementieren

Fügen Sie nun im catch-Block Code hinzu, der eine Nachricht ausgibt, wenn ein Fehler auftritt:

PowerShell (als Administrator)
try 
catch 

Die Variable $_ enthält das Fehlerobjekt und wird verwendet, um die spezifische Fehlermeldung auszugeben.

Schritt 5: Skript abspeichern und ausführen

Speichern Sie das Skript mit der Erweiterung .ps1, z. B. als „script.ps1“. Führen Sie das Skript im PowerShell-Fenster aus, indem Sie den Befehl & script.ps1 eingeben.

Nach dem Ausführen sehen Sie eine Fehlermeldung auf dem Bildschirm, die besagt: „Fehler beim Lesen der Datei: …“. Dies zeigt an, dass das Skript erfolgreich einen Fehler behandelt hat.

Schritt 6: Prüfen ob es geklappt hat

Um sicherzustellen, dass alles korrekt funktioniert hat, führen Sie das Skript erneut aus und überprüfen Sie die Ausgabe. Es sollte eine Fehlermeldung angezeigt werden, wenn der Pfad nicht existiert.

Die wichtigsten Befehle im Überblick

Befehl Wirkung Hinweis
Get-Content C:\nonexistentfile.txt Liest den Inhalt einer Datei. Führt zu einem Fehler, wenn die Datei nicht existiert.
try Begrenzt einen Codeblock für Ausführung mit Fehlerbehandlung. Nutzen Sie diesen Block, um eventuelle Fehlernachrichten zu kapseln.
catch Führt den Code aus, wenn ein Fehler in der try-Block auftritt. Dieser Block sollte immer einen Handler für mögliche Fehler enthalten.
& script.ps1 Ausführen eines PowerShell-Skripts. Verwenden Sie dieses Kommando, um Ihre Skripte im Terminal auszuführen.
$PSVersionTable.PSVersion Gibt die aktuelle Version von PowerShell an. Nützlich zum Überprüfen der Version und Sicherstellen, dass Sie eine unterstützte Version verwenden.
Write-Output „Fehlermeldung" Ausgabe einer Fehlermeldung oder Nachricht. Nutzen Sie diesen Befehl im catch-Block, um spezifische Fehlermeldungen zu generieren.

Häufige Fehler und ihre Lösung

Fehler 1: „Der Pfad ‚C:\nonexistentfile.txt‘ wurde nicht gefunden.“

Ursache: Die angegebene Datei oder der angegebene Pfad existiert nicht.

Lösung: Überprüfen Sie den Pfad auf Richtigkeit. Verwenden Sie zum Beispiel Test-Path C:\nonexistentfile.txt, um zu prüfen, ob der Pfad korrekt ist.

Fehler 2: „Der Befehl ‚Get-Content‘ wurde nicht gefunden.“

Ursache: Der angegebene Befehl existiert nicht oder die Syntax ist falsch.

Lösung: Überprüfen Sie, ob der Befehl korrekt geschrieben wurde. Verwenden Sie Get-Help Get-Content, um die Dokumentation des Befehls zu überprüfen.

Fehler 3: „Der catch-Block ist leer.“

Ursache: Der catch-Block enthält keinen Code, der auf Fehler reagiert.

Lösung: Fügen Sie im catch-Block den entsprechenden Code hinzu, um die Fehlerbehandlung zu implementieren. Zum Beispiel: Write-Output "Fehler: $_".

Fehler 4: „Der try-Block ist leer.“

Ursache: Der try-Block enthält keinen Code, der ausgeführt werden soll.

Lösung: Fügen Sie im try-Block den entsprechenden Code hinzu. Zum Beispiel: Get-Content C:\nonexistentfile.txt.

Änderungen rückgängig machen

Um die Änderungen rückgängig zu machen, löschen Sie einfach das Skriptdatei „script.ps1“ oder bearbeiten Sie den Inhalt des Skripts zurück auf seinen ursprünglichen Zustand. Speichern und führen Sie das Skript dann erneut aus.

Häufige Fragen

Wie kann ich mehrere Fehlerarten im catch-Block behandeln?

Sie können einen switch-Anweisung innerhalb des catch-Blocks verwenden, um verschiedene Fehlertypen zu unterscheiden. Zum Beispiel:

PowerShell (als Administrator)
try 
catch 

Was passiert, wenn kein Fehler auftritt?

Falls der Code im try-Block ohne Probleme ausgeführt wird und keine Ausnahmen auftreten, wird der catch-Block übersprungen. Das Skript setzt normal fort.

Kann ich mehrere try-catch-Blöcke in einem Skript verwenden?

Ja, Sie können mehrere try-catch-Blöcke verwenden, um verschiedene Teile des Codes zu überwachen und unterschiedliche Fehlerarten zu behandeln. Jeder try-Block sollte mit einem entsprechenden catch-Block versehen sein.

Wie kann ich zusätzliche Informationen im catch-Block erfassen?

Sie können verschiedene Eigenschaften des Fehlerelements (z. B. $_.Exception.Message, $_.InvocationInfo.Line) verwenden, um detaillierte Fehlerinformationen zu loggen oder auszugeben.

Was ist das finally-Block und wie kann ich es verwenden?

Das finally-Block wird immer ausgeführt, unabhängig davon, ob ein Fehler aufgetreten ist oder nicht. Dies eignet sich gut für Aufgaben wie Logging oder Ressourcenfreigabe. Zum Beispiel:

PowerShell (als Administrator)
try 
catch 
finally 

Fazit

In dieser Serie „PowerShell lernen Schritt für Schritt“ haben Sie die Grundlagen von PowerShell kennengelernt, einschließlich der Nutzung grundlegender Cmdlets, Pipelinefunktionen, Variablen und Arrays, Bedingungen und Schleifen sowie die Erstellung nützlicher Skripte mit Fehlerbehandlung. Mit diesen Kenntnisse können Sie nun effektive automatisierte Aufgaben in Ihrem Unternehmen durchführen.

Wenn Sie weitere Unterstützung benötigen oder Fragen zu speziellen Anwendungsfällen haben, können Sie sich gerne an IT-Tribus in Nideggen wenden. Wir sind hier, um Ihnen bei der Umsetzung und Optimierung Ihrer PowerShell-Skripte zu helfen.

Serie: PowerShell lernen Schritt für Schritt – Teil 5 von 5

← Vorheriger Teil: PowerShell lernen Schritt für Schritt – Teil 4: Bedingungen und Schleifen

Quellen und weiterführende Informationen

Hinweis: Dieser Beitrag wurde am 14.11.2026 mit KI-Unterstützung erstellt, auf Basis der genannten Quellen eigenständig formuliert und redaktionell von IT-Tribus betreut. Alle Angaben ohne Gewähr – bitte prüfen Sie Befehle vor dem Einsatz in produktiven Umgebungen und legen Sie vorher eine Sicherung an.

Benötigen Sie Unterstützung bei PowerShell Skript erstellen try catch?

IT-Tribus ist Ihr IT-Dienstleister aus Nideggen. Vor Ort helfen wir in Düren, im Kreis Düren und in der Region Aachen – Monitoring und Fernwartung mit NinjaOne bieten wir Unternehmen auch überregional an.

Kostenlose Erstanalyse anfordern
📞 02427 9099860