Compartir a través de


Uso de Visual Studio Code para edición y depuración remotas

Para aquellos que están familiarizados con el ISE, es posible que recuerde que podría ejecutar psedit file.ps1 desde la consola integrada para abrir archivos ( local o remoto) directamente en el ISE.

Esta característica también está disponible en la extensión de PowerShell para VSCode. En esta guía se muestra cómo hacerlo.

Prerrequisitos

En esta guía se da por supuesto que tiene lo siguiente:

  • Un recurso remoto (por ejemplo, una máquina virtual, un contenedor) al que tiene acceso
  • PowerShell ejecutándose en éste y en la máquina host
  • VSCode y la extensión de PowerShell para VSCode

Esta característica funciona en PowerShell y Windows PowerShell.

Esta característica también funciona al conectarse a una máquina remota a través de WinRM, PowerShell Direct o SSH. Si quiere usar SSH, pero usa Windows, consulte la versión win32 de SSH!

Importante

Los comandos Open-EditorFile y psedit solo funcionan en la consola integrada de PowerShell creada por la extensión de PowerShell para VSCode.

Ejemplos de uso

En estos ejemplos se muestra la edición y depuración remota desde un MacBook Pro hacia una máquina virtual Ubuntu que se ejecuta en Azure. El proceso es idéntico en Windows.

Edición de archivos locales con Open-EditorFile

Con la extensión de PowerShell para VSCode iniciada y la consola integrada de PowerShell abierta, podemos escribir Open-EditorFile foo.ps1 o psedit foo.ps1 para abrir el archivo local foo.ps1 directamente en el editor.

Open-EditorFile foo.ps1 funciona localmente

Nota

El archivo foo.ps1 ya debe existir.

Desde allí, podemos:

  • Agregar puntos de interrupción en el medianil.

    Adición de un punto de interrupción en el medianil del margen

  • Presione F5 para depurar el script de PowerShell.

    Depuración del script de PowerShell local

Durante la depuración, puede interactuar con la consola de depuración, consultar las variables del ámbito de la izquierda y todas las demás herramientas de depuración estándar.

Edición remota de archivos con Open-EditorFile

Ahora veamos la edición y la depuración de un archivo remoto. Los pasos son casi iguales, hay solo una cosa que debemos hacer primero: escriba nuestra sesión de PowerShell en el servidor remoto.

Hay un cmdlet para hacerlo. Se denomina Enter-PSSession.

En resumen:

  • Enter-PSSession -ComputerName foo inicia una sesión mediante WinRM
  • Enter-PSSession -ContainerId foo y Enter-PSSession -VmId foo iniciar una sesión a través de PowerShell Direct
  • Enter-PSSession -HostName foo inicia una sesión a través de SSH

Para más información, consulte la documentación para Enter-PSSession.

Puesto que nos estamos conectando de forma remota a una VM Ubuntu en Azure, estamos usando SSH.

En primer lugar, en la consola integrada, ejecute Enter-PSSession. Se conecta a la sesión remota cuando [<hostname>] aparece a la izquierda del símbolo del sistema.

llamada a Enter-PSSession para conectarse a una sesión remota

Ahora, podemos realizar los mismos pasos que si editamos un script local.

  1. Ejecute Open-EditorFile test.ps1 o psedit test.ps1 para abrir el archivo de test.ps1 remoto

    Edición del script en el sistema remoto del sistema remoto

  2. Editar el archivo/establecer puntos de interrupción.

    Editar y establecer puntos de interrupción

  3. Iniciar la depuración (F5) del archivo remoto

    Depuración del script remoto

Si tiene algún problema, puede abrir incidencias en el repositorio de GitHub .