使用 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-EditorFile
和 psedit
命令只能在適用於 VSCode 的 PowerShell 擴充功能所建立的 PowerShell 整合式控制台 運作。
這些範例顯示從 MacBook Pro 遠端編輯和偵錯到在 Azure 中執行的 Ubuntu VM。 在 Windows 上,該過程相同。
啟動適用於 VSCode 的 PowerShell 擴充功能並開啟 PowerShell 整合式控制台後,我們可以輸入 Open-EditorFile foo.ps1
或 psedit foo.ps1
,以在編輯器中開啟本機 foo.ps1 檔案。
注意
檔案 foo.ps1
必須已經存在。
我們可以從這裡:
將斷點新增至顯示區域
按 F5 對 PowerShell 腳本進行偵錯。
偵錯時,您可以與偵錯控制台互動、查看左側範圍中的變數,以及所有其他標準偵錯工具。
現在讓我們進入遠端檔案編輯和偵錯。 這些步驟幾乎相同,我們只需要先執行一件事-輸入 PowerShell 會話至遠端伺服器。
有一個 Cmdlet 可以這麼做。 稱為 Enter-PSSession
。
總之:
-
Enter-PSSession -ComputerName foo
透過 WinRM 啟動會話 -
Enter-PSSession -ContainerId foo
和Enter-PSSession -VmId foo
透過 PowerShell Direct 啟動工作階段 -
Enter-PSSession -HostName foo
透過 SSH 啟動會話
如需更多資訊,請參閱 Enter-PSSession的相關說明文件。
由於我們遠端連線到 Azure 中的 Ubuntu VM,所以我們使用 SSH。
首先,在整合式控制台中,執行 Enter-PSSession
。 當 [<hostname>]
出現在提示符左側時,表示您已連接到遠端工作階段。
現在,我們可以執行與編輯本機腳本相同的步驟。
執行
Open-EditorFile test.ps1
或psedit test.ps1
以開啟遠端test.ps1
檔案編輯檔案/設定斷點
開始偵錯遠端檔案 (F5)
如果您有任何問題,您可以在 GitHub 存放庫中開啟問題。