Skripte erklären und prüfen
Lernziele
- Ein unbekanntes Skript mit KI-Hilfe verstehen und die Erklärung überprüfen
- Fehlermeldungen erklären lassen
- Einen Code-Review und Refactoring-Vorschläge einholen und bewerten
Code erklären lassen
Abschnitt betitelt „Code erklären lassen“Du erbst ein Skript und niemand weiß mehr, was es tut. Eine KI kann Zeile für Zeile erklären.
Gutes Vorgehen:
- Gib das Skript vollständig an (ohne Passwörter, siehe Datenschutz).
- Sage dazu, wer du bist und was du willst: „Ich bin Windows-Administrator und kenne PowerShell-Grundlagen. Erkläre mir dieses Skript Schritt für Schritt auf Deutsch.”
- Bitte um eine Zusammenfassung und um die Stellen, bei denen sie unsicher ist.
- Prüfe die Erklärung: Schlage jedes Cmdlet nach (
Get-Help), führe Teilstücke einzeln aus.
Fehler erklären lassen
Abschnitt betitelt „Fehler erklären lassen“Kopiere die vollständige Fehlermeldung und den auslösenden Befehl, nicht nur „es geht nicht”:
$Error[0] | Format-List * -ForceGib zusätzlich an: PowerShell-Version ($PSVersionTable.PSVersion), Windows-Version und was du erwartet hast. Prüfe anschließend den Vorschlag mit -WhatIf oder in einer Testumgebung.
Code-Review und Refactoring
Abschnitt betitelt „Code-Review und Refactoring“Typische Fragen:
- „Welche Fehlerfälle werden nicht behandelt?”
- „Welche Befehle ändern etwas und sollten
-WhatIfunterstützen?” - „Wo verwende ich Aliase oder veraltete Cmdlets (
Get-WmiObject)?” - „Wo stehen Passwörter oder Pfade fest im Code?”
- „Mache daraus eine Funktion mit Parametern, ohne das Verhalten zu ändern.”
Gutes und schlechtes Ergebnis erkennen
Abschnitt betitelt „Gutes und schlechtes Ergebnis erkennen“| Eher vertrauenswürdig | Eher misstrauisch machen |
|---|---|
nutzt Cmdlets, die du mit Get-Command findest |
Cmdlet oder Parameter existiert nicht |
| erklärt, warum etwas so ist | klingt sehr überzeugt, nennt aber keine Quelle |
bringt -WhatIf oder Fehlerbehandlung von sich aus mit |
Invoke-Expression, -Force und Remove-Item -Recurse ohne Warnung |
| passt zu deiner PowerShell-Version | Windows-PowerShell-5.1-Syntax in PowerShell 7 (oder umgekehrt) ohne Hinweis |