Verwenden von Visual Studio Code zur Remotebearbeitung und zum Debuggen
Für diejenigen, die mit dem ISE vertraut sind, können Sie daran erinnern, dass Sie psedit file.ps1
über die integrierte Konsole ausführen können, um Dateien - lokal oder remote - direkt im ISE zu öffnen.
Dieses Feature ist auch in der PowerShell-Erweiterung für VSCode verfügbar. In diesem Handbuch erfahren Sie, wie Sie dies tun.
Voraussetzungen
In diesem Leitfaden wird davon ausgegangen, dass Sie folgendes haben:
- Eine Remoteressource (z. B. eine VM, ein Container), auf die Sie Zugriff haben
- PowerShell, die darauf ausgeführt wird, und der Hostcomputer
- VSCode und die PowerShell-Erweiterung für VSCode
Dieses Feature funktioniert auf PowerShell und Windows PowerShell.
Dieses Feature funktioniert auch beim Herstellen einer Verbindung mit einem Remotecomputer über WinRM, PowerShell Direct oder SSH. Wenn Sie SSH verwenden möchten, aber Windows nutzen, sehen Sie sich die Win32-Version von SSHan!
Wichtig
Die Befehle Open-EditorFile
und psedit
funktionieren nur in der integrierten PowerShell-Konsole, die von der PowerShell-Erweiterung für VSCode erstellt wurde.
Verwendungsbeispiele
Diese Beispiele zeigen Remotebearbeitung und Debugging von einem MacBook Pro zu einer Ubuntu-VM, die in Azure ausgeführt wird. Der Prozess ist unter Windows identisch.
Lokale Dateibearbeitung mit Open-EditorFile
Nachdem die PowerShell-Erweiterung für VSCode gestartet und die integrierte PowerShell-Konsole geöffnet wurde, können wir Open-EditorFile foo.ps1
oder psedit foo.ps1
eingeben, um die lokale foo.ps1 Datei direkt im Editor zu öffnen.
Anmerkung
Die Datei foo.ps1
muss bereits vorhanden sein.
Von dort aus können wir:
Fügen Sie Haltepunkte zum Bundsteg hinzu.
Drücken Sie F5, um das PowerShell-Skript zu debuggen.
Beim Debuggen können Sie mit der Debugkonsole interagieren, die Variablen im Bereich auf der linken Seite und alle anderen Standarddebuggingtools auschecken.
Remotedateibearbeitung mit Open-EditorFile
Jetzt befassen wir uns mit der Remotedateibearbeitung und dem Debuggen. Die Schritte sind fast gleich, es gibt nur eine Sache, die wir zuerst ausführen müssen – geben Sie unsere PowerShell-Sitzung auf den Remoteserver ein.
Dazu gibt es ein Cmdlet. Es wird als Enter-PSSession
bezeichnet.
Kurz gesagt:
Enter-PSSession -ComputerName foo
startet eine Sitzung über WinRMEnter-PSSession -ContainerId foo
undEnter-PSSession -VmId foo
eine Sitzung über PowerShell Direct startenEnter-PSSession -HostName foo
startet eine Sitzung über SSH
Weitere Informationen finden Sie in der Dokumentation zu Enter-PSSession.
Da wir ein Remoting auf eine Ubuntu-VM in Azure durchführen, verwenden wir SSH.
Führen Sie zunächst in der integrierten Konsole Enter-PSSession
aus. Sie sind mit der Remote-Session verbunden, wenn [<hostname>]
links neben dem Prompt angezeigt wird.
Jetzt können wir dieselben Schritte ausführen, als ob wir ein lokales Skript bearbeiten.
Führen Sie
Open-EditorFile test.ps1
oderpsedit test.ps1
aus, um die Remotedateitest.ps1
zu öffnen.Datei bearbeiten/Haltepunkte festlegen
Starten des Debuggens (F5) der Remotedatei
Wenn Probleme auftreten, können Sie Probleme im GitHub-Repositoryöffnen.