Entdecken Sie agentenbasierte Entwicklung –

PowerShell in Visual Studio Code

PowerShell ist eine aufgabenbasierte Befehlszeilen-Shell und Skriptsprache, die auf .NET basiert und Administratoren auf jeder Plattform ein leistungsstarkes Toolset zur Verfügung stellt.

Die Microsoft PowerShell-Erweiterung für Visual Studio Code (VS Code) bietet umfangreiche Sprachunterstützung und Funktionen wie Syntaxvervollständigung, Definitionsverfolgung und Linting für PowerShell. Die Erweiterung sollte überall dort funktionieren, wo VS Code mit aktuell unterstützten PowerShell 7+-Versionen unterstützt wird.

Die Unterstützung für Windows PowerShell 5.1 wird nach bestem Bemühen bereitgestellt. .NET Framework 4.8 oder höher ist erforderlich.

VS Code Remote Development-Umgebungen, einschließlich GitHub Codespaces und VS Code Server, werden unterstützt.

Wichtig

Visual Studio Code for the Web wird nur mit eingeschränkter Funktionalität, wie z. B. grundlegendem Syntax-Highlighting, unterstützt, da die PowerShell-Engine in dieser Umgebung nicht ausgeführt werden kann.

Wir testen aktiv die folgenden Konfigurationen

  • Windows Server 2022 mit Windows PowerShell 5.1 und PowerShell 7+
  • macOS 14.7 mit PowerShell 7+
  • Ubuntu 24.04 mit PowerShell 7+

Unter Windows testen wir zusätzlich mit und ohne aktiviertem Constrained Language Mode.

Installieren der PowerShell-Erweiterung

Die PowerShell-Erweiterung kann aus dem Visual Studio Code Marketplace installiert werden, indem Sie auf die Installieren-Schaltfläche klicken. Sie können die PowerShell-Erweiterung auch innerhalb von VS Code installieren, indem Sie die Ansicht Erweiterungen mit dem Tastaturkürzel ⇧⌘X (Windows, Linux Ctrl+Shift+X) öffnen, PowerShell eingeben und die PowerShell-Erweiterung auswählen.

PowerShell extension

Hauptfunktionen

Debugging

Die PowerShell-Erweiterung nutzt die integrierte Debugging-Schnittstelle von VS Code, um das Debuggen von PowerShell-Skripten und Modulen zu ermöglichen. Weitere Informationen zum Debuggen von PowerShell finden Sie unter Using VS Code.

Unterstützung für mehrere Versionen

Sie können die PowerShell-Erweiterung so konfigurieren, dass sie eine beliebige unterstützte, auf Ihrem Computer installierte Version von PowerShell verwendet, indem Sie diesen Anweisungen folgen.

Oder führen Sie den Befehl PowerShell: Show Session Menu aus der Befehlspalette aus (⇧⌘P (Windows, Linux Ctrl+Shift+P)).

CodeLens-Unterstützung

CodeLenses sind ein VS Code-Feature, das umsetzbare, kontextbezogene Informationen innerhalb des Quellcodes anzeigt.

Zu den CodeLens-Funktionen gehören

  • Pester Run tests (Tests ausführen) und Debug tests (Tests debuggen).

    Pester CodeLens Integration

  • Pester-Symbolunterstützung

    CodeLens Pester Symbol Support

  • Verweise auf Funktionen, Variablen, Klassen und andere Symbole

    Die CodeLens-Verweisunterstützung zeigt an, wie oft ein Symbol in Ihrem Code referenziert wird, und ermöglicht Ihnen den Sprung zu bestimmten Verweisen.

    CodeLens Function Reference Support

PSScriptAnalyzer-Integration

PSScriptAnalyzer ist ein PowerShell-Modul, das einen statischen Quellcode-Prüfer für Module und Skripte bereitstellt. PSScriptAnalyzer verfügt über Regeln zur Überprüfung der Qualität von PowerShell-Code. Diese Regeln basieren auf den bewährten PowerShell-Methoden, die vom PowerShell-Team und der Community identifiziert wurden. PSScriptAnalyzer generiert Diagnoseeinträge (Fehler und Warnungen), um Benutzer über potenzielle Codefehler zu informieren und mögliche Lösungen zur Verbesserung vorzuschlagen.

Die PowerShell-Erweiterung enthält standardmäßig PSScriptAnalyzer und führt automatisch eine Analyse der PowerShell-Skriptdateien durch, die Sie in VS Code bearbeiten.

PSScriptAnalyzer wird mit einer Sammlung integrierter Regeln geliefert, die verschiedene Aspekte des PowerShell-Quellcodes überprüfen, wie z. B. das Vorhandensein nicht initialisierter Variablen, die Verwendung des Typs PSCredential, die Verwendung von Invoke-Expression und andere. Das Modul ermöglicht es Ihnen auch, bestimmte Regeln einzuschließen oder auszuschließen.

Um PSScriptAnalyzer zu deaktivieren, öffnen Sie Ihre Einstellungen (⌘, (Windows, Linux Ctrl+,)), durchsuchen Sie den Bereich Extensions, wählen Sie die PowerShell-Erweiterung aus und deaktivieren Sie das Kontrollkästchen für Script Analysis: Enable (powershell.scriptAnalysis.enable).

PSScriptAnalyzer Settings

PSScriptAnalyzer bietet auch Code-Formatierung. Sie können die automatische Dokumentformatierung mit dem Befehl Format Document oder dem Tastaturkürzel (⇧⌥F (Windows Shift+Alt+F, Linux Ctrl+Shift+I)) aufrufen.

Pester-Integration

Pester ist ein Framework zum Ausführen von Unit-Tests; Windows PowerShell 5.1 wird mit vorinstalliertem Pester 3.40 ausgeliefert. Um Pester zu aktualisieren oder die neueste Version auf anderen Plattformen zu installieren, folgen Sie den Pester-Installationsanweisungen.

Einstellungen der PowerShell-Erweiterung

Sie können die VS Code-Einstellungen über den Menüpunkt Datei > Einstellungen > Einstellungen anpassen.

Sie können auch das Zahnradsymbol in der unteren linken Ecke der Aktivitätsleiste auswählen.

codeGear

Sie können auch das Tastaturkürzel ⌘, (Windows, Linux Ctrl+,) verwenden, um Ihre Einstellungen zu öffnen. Sie können die Datei settings.json weiterhin über den Befehl Preferences: Open User Settings (JSON) aus der Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)) öffnen oder indem Sie den Standardeinstellungseditor mit der Einstellung "workbench.settings.editor" ändern.

Gehen Sie zu Benutzer- und Arbeitsbereichseinstellungen für weitere Informationen zur Konfiguration von VS Code-Einstellungen.

Types.ps1xml- und Format.ps1xml-Dateien

PowerShell .ps1xml-Dateien werden verwendet, um das Typsystem zu erweitern und die Ausgabeformatierung zu definieren. Weitere Informationen zu diesen Dateien finden Sie in der offiziellen PowerShell-Dokumentation zu Types.ps1xml und Format.ps1xml. Sie können IntelliSense-Funktionen beim Erstellen von .ps1xml-Dateien erhalten, indem Sie die XML-Erweiterung von Red Hat installieren. Fügen Sie nach der Installation diese Konfiguration zu Ihren Benutzereinstellungen hinzu

"xml.fileAssociations": [
  {
    "systemId": "https://raw.githubusercontent.com/PowerShell/PowerShell/master/src/Schemas/Format.xsd",
    "pattern": "**/*.Format.ps1xml"
  },
  {
    "systemId": "https://raw.githubusercontent.com/PowerShell/PowerShell/master/src/Schemas/Types.xsd",
    "pattern": "**/*.Types.ps1xml"
  }
]

Diese Konfiguration weist die XML-Erweiterung an, die offiziellen XML-Schemata aus dem PowerShell-Repository für alle .ps1xml-Dateien zu verwenden. Das Konfigurieren dieser Schemata ermöglicht die folgenden Funktionen in ps1xml-Dateien

  • Syntaxfehlerbericht
  • Schemavalidierung
  • Tag- und Attributvervollständigung
  • Automatisches Schließen von Tags
  • Symbol-Highlighting
  • Dokumentfaltung
  • Dokumentsymbole und Gliederung
  • Umbenennungsunterstützung
  • Dokumentformatierung

Beispielskripte

Beispielskripte sind in der Erweiterung enthalten und befinden sich unter folgendem Pfad.

~/.vscode/extensions/ms-vscode.PowerShell-<version>/examples

Um die Beispiele in VS Code zu öffnen oder anzuzeigen, führen Sie Folgendes in Ihrer PowerShell-Eingabeaufforderung aus

code (Get-ChildItem ~\.vscode\extensions\ms-vscode.PowerShell-*\examples)[-1]

Sie können die Beispiele auch über die Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)) mit dem Befehl PowerShell: Open Examples Folder öffnen.

Open PowerShell Examples

Zusätzliche Ressourcen

Weitere ausführliche Artikel finden Sie in der PowerShell-Dokumentation. Beginnen Sie mit Using VS Code.

Sehen Sie sich den Leitfaden zur Fehlerbehebung an, um Antworten auf häufige Fragen zu erhalten.

Weitere Informationen zum Debuggen finden Sie in der zweiteiligen Blogpost-Serie Hey, Scripting Guy!, geschrieben von @keithHill über das Debuggen mit der PowerShell-Erweiterung

Testen neuer Funktionen und Feedback geben

Wir empfehlen Ihnen, wann immer möglich die Pre-Release-Version zu testen. Wenn ein Pre-Release verfügbar ist, kann es über den Marketplace mithilfe der Schaltfläche Switch to Pre-Release Version installiert werden. Sie können zur stabilen Version der Erweiterung zurückkehren, indem Sie die Schaltfläche Switch to Release Version verwenden, die dann erscheint. Sie können auch auf andere Versionen der Erweiterung zurückstufen, indem Sie den Pfeil neben der Deinstallieren-Schaltfläche verwenden und Install Another Version... wählen.

Screenshot showing the button to switch to a pre-release version.

Wenn Sie einen Fehler finden, eröffnen Sie ein Issue und kehren Sie zur stabilen Version zurück, während wir ihn beheben.

© . This website operates independently and is not affiliated with or endorsed by Microsoft. All brand names, logos, and trademarks are the property of their respective owners.