Použití sady Visual Studio Code ke vzdáleným úpravám a laděníUsing Visual Studio Code for remote editing and debugging

Pro ty, které jste obeznámeni s ISE, se můžete setkat s tím, že se dá spustit psedit file.ps1 z integrované konzoly, aby se v ISE otevíraly soubory – Local nebo Remote-Right.For those of you that are familiar with the ISE, you may recall that you could run psedit file.ps1 from the integrated console to open files - local or remote - right in the ISE.

Tato funkce je dostupná taky v rozšíření PowerShellu pro VSCode.This feature is also available in the PowerShell extension for VSCode. V této příručce se dozvíte, jak to udělat.This guide shows you how to do it.

PožadavkyPrerequisites

V tomto průvodci se předpokládá, že máte následující:This guide assumes that you have:

  • Vzdálený prostředek (např. virtuální počítač, kontejner), ke kterému máte přístupA remote resource (ex: a VM, a container) that you have access to
  • Prostředí PowerShell běžící na tomto počítači a hostitelském počítačiPowerShell running on it and the host machine
  • VSCode a rozšíření PowerShellu pro VSCodeVSCode and the PowerShell extension for VSCode

Tato funkce funguje na Windows PowerShellu a v jádru PowerShellu.This feature works on Windows PowerShell and PowerShell Core.

Tato funkce funguje taky při připojování ke vzdálenému počítači přes WinRM, PowerShell Direct nebo SSH.This feature also works when connecting to a remote machine via WinRM, PowerShell Direct, or SSH. Pokud chcete použít SSH, ale používáte Windows, Projděte si verzi ssh pro Win32.If you want to use SSH, but are using Windows, check out the Win32 version of SSH!

Důležité

Open-EditorFilePříkazy a psedit fungují pouze v integrované konzole prostředí PowerShell vytvořené rozšířením PowerShell pro VSCode.The Open-EditorFile and psedit commands only work in the PowerShell Integrated Console created by the PowerShell extension for VSCode.

Příklady použitíUsage examples

Tyto příklady ukazují vzdálené úpravy a ladění z MacBook pro na virtuální počítač Ubuntu běžící v Azure.These examples show remote editing and debugging from a MacBook Pro to an Ubuntu VM running in Azure. Tento proces je ve Windows stejný.The process is identical on Windows.

Místní úpravy souborů pomocí Open-EditorFileLocal file editing with Open-EditorFile

S rozšířením PowerShellu pro VSCode se spustilo a otevře se integrovaná konzola prostředí PowerShell, můžeme zadat Open-EditorFile foo.ps1 nebo psedit foo.ps1 otevřít místní soubor foo. ps1 přímo v editoru.With the PowerShell extension for VSCode started and the PowerShell Integrated Console opened, we can type Open-EditorFile foo.ps1 or psedit foo.ps1 to open the local foo.ps1 file right in the editor.

Open-EditorFile foo. ps1 funguje místně.

Poznámka

Soubor foo.ps1 již musí existovat.The file foo.ps1 must already exist.

Odtud můžeme:From there, we can:

  • Přidat zarážky na hřbetAdd breakpoints to the gutter

    Přidání zarážky na hřbet

  • Stiskněte klávesu F5 pro ladění skriptu PowerShellu.Hit F5 to debug the PowerShell script.

    Ladění místního skriptu PowerShellu

Během ladění můžete pracovat s konzolou ladění, kontrolovat proměnné v oboru vlevo a všechny další standardní ladicí nástroje.While debugging, you can interact with the debug console, check out the variables in the scope on the left, and all the other standard debugging tools.

Vzdálená úprava souborů pomocí Open-EditorFileRemote file editing with Open-EditorFile

Teď se dostanete ke vzdálenému úpravám souborů a ladění.Now let's get into remote file editing and debugging. Tyto kroky jsou skoro stejné, ale je potřeba, abyste nejdřív zadali naši relaci PowerShellu na vzdálený server.The steps are nearly the same, there's just one thing we need to do first - enter our PowerShell session to the remote server.

K tomu je k dispozici rutina.There's a cmdlet for to do so. Je volána Enter-PSSession .It's called Enter-PSSession.

V postupném vyvýšení rutiny se používá:The watered down explanation of the cmdlet is:

  • Enter-PSSession -ComputerName foospustí relaci přes WinRM.Enter-PSSession -ComputerName foo starts a session via WinRM
  • Enter-PSSession -ContainerId fooa Enter-PSSession -VmId foo spustit relaci přes PowerShell DirectEnter-PSSession -ContainerId foo and Enter-PSSession -VmId foo start a session via PowerShell Direct
  • Enter-PSSession -HostName foospustí relaci přes SSH.Enter-PSSession -HostName foo starts a session via SSH

Další informace najdete v dokumentaci k příkazům Enter-PSSession.For more information, see the documentation for Enter-PSSession.

Vzhledem k tomu, že z macOS k virtuálnímu počítači s Ubuntu v Azure, používáme pro vzdálenou komunikaci protokol SSH.Since we are going from macOS to an Ubuntu VM in Azure, we are using SSH for remoting.

Nejprve v integrované konzole spusťte příkaz Enter-PSSession .First, in the Integrated Console, run Enter-PSSession. Jste připojení ke vzdálené relaci, když [<hostname>] se zobrazí vlevo od výzvy.You're connected to the remote session when [<hostname>] shows up to the left of your prompt.

Volání Enter-PSSession

Nyní můžeme stejný postup udělat, jako kdybyste upravovali místní skript.Now, we can do the same steps as if we are editing a local script.

  1. Spustit Open-EditorFile test.ps1 nebo psedit test.ps1 pro otevření vzdáleného test.ps1 souboruRun Open-EditorFile test.ps1 or psedit test.ps1 to open the remote test.ps1 file

Otevřete soubor test. ps1 s EditorFile.

  1. Upravit zarážky souboru nebo sadyEdit the file/set breakpoints

    úpravy a nastavení zarážek

  2. Spustit ladění (F5) vzdálený souborStart debugging (F5) the remote file

    Ladění vzdáleného souboru

Pokud máte nějaké problémy, můžete otevřít problémy v úložišti GitHub.If you have any problems, you can open issues in the GitHub repo.