使用 Visual Studio Code 進行遠端編輯和偵錯

對於熟悉 ISE 的人員,您可能會回想一下,您可以從整合式主控台執行 psedit file.ps1 ,以在 ISE 中開啟檔案 - 本機或遠端 。

此功能也適用於適用於 VSCode 的 PowerShell 擴充功能。 本指南說明如何執行此作業。

必要條件

本指南假設您有:

  • 遠端資源(例如:您有權存取的 VM、容器)
  • 在它和主計算機上執行的PowerShell
  • VSCode 和適用於 VSCode 的 PowerShell 擴充功能

此功能適用於PowerShell和 Windows PowerShell。

此功能也適用於透過 WinRM、PowerShell Direct 或 SSH 連線到遠端電腦時。 如果您想要使用 SSH,但使用的是 Windows,請查看 Win32 版的 SSH

重要

Open-EditorFilepsedit 命令只能在適用於 VSCode 的 PowerShell 擴充功能所建立的 PowerShell 整合式控制台運作。

使用範例

這些範例顯示從 MacBook Pro 遠端編輯和偵錯到在 Azure 中執行的 Ubuntu VM。 此程式在 Windows 上完全相同。

使用 Open-EditorFile 編輯本機檔案

在 VSCode 的 PowerShell 擴充功能啟動並開啟 PowerShell 整合式控制台之後,我們可以在編輯器中輸入 Open-EditorFile foo.ps1psedit foo.ps1 開啟本機 foo.ps1 檔案。

Open-EditorFile foo.ps1 可在本機運作

注意

檔案 foo.ps1 必須已經存在。

我們可以從這裡:

  • 將斷點新增至裝訂線

    將斷點新增至排水溝

  • 按 F5 對 PowerShell 腳本進行偵錯。

    偵錯本機 PowerShell 腳本

偵錯時,您可以與偵錯控制台互動、查看左側範圍中的變數,以及所有其他標準偵錯工具。

使用 Open-EditorFile 進行遠端檔案編輯

現在讓我們進入遠端檔案編輯和偵錯。 這些步驟幾乎相同,我們只需要先執行一件事-輸入 PowerShell 會話至遠端伺服器。

有一個 Cmdlet 可以這麼做。 其稱為 Enter-PSSession \(部分機器翻譯\)。

簡言之:

  • Enter-PSSession -ComputerName foo 透過 WinRM 啟動作業階段
  • Enter-PSSession -ContainerId fooEnter-PSSession -VmId foo 透過PowerShell Direct 啟動作業階段
  • Enter-PSSession -HostName foo 透過 SSH 啟動工作階段

如需詳細資訊,請參閱 Enter-PSSession 的檔

由於我們遠端至 Azure 中的 Ubuntu VM,因此我們使用 SSH。

首先,在整合式控制台中,執行 Enter-PSSession。 當提示左側顯示時 [<hostname>] ,您已連線到遠端會話。

呼叫 Enter-PSSession 以連線到遠端會話

現在,我們可以執行與編輯本機腳本相同的步驟。

  1. 執行 Open-EditorFile test.ps1psedit test.ps1 以開啟遠端 test.ps1 檔案

    編輯遠端系統上的腳本

  2. 編輯檔案/設定斷點

    編輯和設定斷點

  3. 開始偵錯遠端檔案 (F5)

    偵錯遠端文本

如果您有任何問題,您可以在 GitHub 存放庫中開啟問題