Condividi tramite


Uso di Visual Studio Code per la modifica e il debug remoti

Per coloro che hanno familiarità con l'ISE, è possibile ricordare che è possibile eseguire psedit file.ps1 dalla console integrata per aprire file, locali o remoti, direttamente nell'ISE.

Questa funzionalità è disponibile anche nell'estensione PowerShell per VSCode. Questa guida illustra come eseguire questa operazione.

Prerequisiti

Questa guida presuppone che l'utente abbia:

  • Una risorsa remota (ad esempio una macchina virtuale, un contenitore) a cui si ha accesso
  • PowerShell in esecuzione su di esso e sul computer host
  • VSCode e l'estensione PowerShell per VSCode

Questa funzionalità funziona in PowerShell e Windows PowerShell.

Questa funzionalità funziona anche quando ci si connette a un computer remoto tramite WinRM, PowerShell Direct o SSH. Se si vuole usare SSH, ma si usa Windows, consultare la versione Win32 di SSH!

Importante

I comandi Open-EditorFile e psedit funzionano solo nella console integrata di PowerShell creata dall'estensione PowerShell per VSCode.

Esempi di utilizzo

Questi esempi illustrano la modifica remota e il debug da un MacBook Pro a una macchina virtuale Ubuntu in esecuzione in Azure. Il processo è identico in Windows.

Modifica dei file locali con Open-EditorFile

Con l'estensione PowerShell per VSCode avviata e la console integrata di PowerShell aperta, è possibile digitare Open-EditorFile foo.ps1 o psedit foo.ps1 per aprire il file foo.ps1 locale direttamente nell'editor.

Open-EditorFile foo.ps1 funziona localmente

Nota

Il file foo.ps1 deve esistere già.

Da qui è possibile:

  • Aggiungere punti di interruzione al margine

    Aggiunta di un punto di interruzione alla barra

  • Premere F5 per eseguire il debug dello script di PowerShell.

    il debug dello script di PowerShell locale

Durante il debug, è possibile interagire con la console di debug, controllare le variabili nell'ambito a sinistra e tutti gli altri strumenti di debug standard.

Modifica di file remoti con Open-EditorFile

Ora passiamo alla modifica e al debug dei file remoti. I passaggi sono quasi uguali, è necessario prima eseguire una sola operazione: immettere la sessione di PowerShell nel server remoto.

A tale scopo, è disponibile un cmdlet. Viene chiamato Enter-PSSession.

Insomma:

  • Enter-PSSession -ComputerName foo avvia una sessione tramite WinRM
  • Enter-PSSession -ContainerId foo e Enter-PSSession -VmId foo avviare una sessione tramite PowerShell Direct
  • Enter-PSSession -HostName foo avvia una sessione tramite SSH

Per altre informazioni, vedere la documentazione per Enter-PSSession.

Poiché stiamo effettuando il collegamento remoto a una VM Ubuntu in Azure, utilizziamo SSH.

Prima di tutto, nella console integrata eseguire Enter-PSSession. Si è connessi alla sessione remota quando [<hostname>] viene visualizzato a sinistra del prompt.

Chiamare Enter-PSSession per connettersi a una sessione remota

A questo scopo, è possibile eseguire gli stessi passaggi di se si sta modificando uno script locale.

  1. Eseguire Open-EditorFile test.ps1 o psedit test.ps1 per aprire il file di test.ps1 remoto

    Modificare lo script nel sistema remoto

  2. Modificare il file/impostare i punti di interruzione

    Modificare e impostare punti di interruzione

  3. Avviare il debug (F5) del file remoto

    Debug dello script remoto

In caso di problemi, è possibile aprire problemi nel repository GitHub .