Använda Visual Studio Code för att fjärredigera och fjärrfelsöka

För de som är bekanta med ISE kanske du kommer ihåg att du kan köra från den integrerade konsolen för att öppna filer – lokala eller fjärranslutna – direkt psedit file.ps1 i ISE.

Den här funktionen är också tillgänglig i PowerShell-tillägget för VSCode. Den här guiden visar hur du gör det.

Förutsättningar

Den här guiden förutsätter att du har:

  • En fjärrresurs (till exempel en virtuell dator, en container) som du har åtkomst till
  • PowerShell som körs på den och värddatorn
  • VSCode och PowerShell-tillägget för VSCode

Den här funktionen fungerar på PowerShell och Windows PowerShell.

Den här funktionen fungerar också när du ansluter till en fjärrdator via WinRM, PowerShell Direct eller SSH. Om du vill använda SSH, men använder Windows, kan du kolla in Win32-versionen av SSH!

Viktigt

Kommandona Open-EditorFile och fungerar bara i den psedit PowerShell-integrerade konsolen som skapats av PowerShell-tillägget för VSCode.

Användningsexempel

De här exemplen visar fjärrredigering och felsökning från en MacBook-Pro till en virtuell Ubuntu-dator som körs i Azure. Processen är identisk på Windows.

Lokal filredigering med Open-EditorFile

När PowerShell-tillägget för VSCode har startats och den PowerShell-integrerade konsolen har öppnats kan vi skriva eller öppna den lokala foo.ps1 direkt Open-EditorFile foo.ps1 psedit foo.ps1 i redigeraren.

Open-EditorFile foo.ps1 fungerar lokalt

Anteckning

Filen måste foo.ps1 redan finnas.

Därifrån kan vi:

  • Lägga till brytpunkter i gutter

    Lägga till en brytpunkt i gutter

  • Tryck på F5 för att felsöka PowerShell-skriptet.

    felsöka det lokala PowerShell-skriptet

När du felsöker kan du interagera med felsökningskonsolen, kolla in variablerna i omfånget till vänster och alla andra standardverktyg för felsökning.

Fjärrfilredigering med Open-EditorFile

Nu ska vi gå in på fjärrfilredigering och felsökning. Stegen är nästan desamma, det är bara en sak som vi behöver göra först – ange vår PowerShell-session på fjärrservern.

Det finns en cmdlet för att göra det. Den kallas Enter-PSSession.

Den nedsmedda förklaringen av cmdleten är:

  • Enter-PSSession -ComputerName foo startar en session via WinRM
  • Enter-PSSession -ContainerId foo och Enter-PSSession -VmId foo starta en session via PowerShell Direct
  • Enter-PSSession -HostName foo startar en session via SSH

Mer information finns i dokumentationen för Enter-PSSession.

Eftersom vi går från macOS till en virtuell Ubuntu-dator i Azure använder vi SSH för fjärrkommunikation.

Börja med att köra i den integrerade Enter-PSSession konsolen. Du är ansluten till fjärrsessionen när [<hostname>] visas till vänster om uppmaningen.

Anropa Enter-PSSession för att ansluta till en fjärrsession

Nu kan vi göra samma steg som om vi redigerar ett lokalt skript.

  1. Kör Open-EditorFile test.ps1 eller för att öppna psedit test.ps1 test.ps1 fjärrfilen

Redigera skriptet på fjärrsystemet

  1. Redigera filen/ange brytpunkter

    Redigera och ange brytpunkter

  2. Starta felsökning (F5) fjärrfilen

    Felsöka fjärrskriptet

Om du har problem kan du öppna ärenden i GitHub lagringsplatsen.