Melhorias na depuração de script do PowerShellImprovements in PowerShell Script Debugging

Várias melhorias foram feitas no PowerShell 5.0 a fim de aprimorar a experiência de depuração:A number of improvements were made in PowerShell 5.0 to enhance the debugging experience:

Interromper TudoBreak All

O console do PowerShell e o ISE do Windows PowerShell agora permitem que você interrompa o depurador para executar scripts.The PowerShell console and Windows PowerShell ISE now allow you to break into the debugger for running scripts. Isso funciona em sessões locais e remotas.This works in both local and remote sessions.

No console, pressione Ctrl+Break.In the console, press Ctrl+Break.

No ISE, pressione Ctrl+B ou use o comando de menu Depurar -> Interromper Tudo.In ISE, press Ctrl+B, or use the Debug -> Break All menu command.

Depuração remota e edição de arquivos remota no ISE do Windows PowerShellRemote debugging and remote file editing in Windows PowerShell ISE

O ISE do Windows PowerShell agora permite abrir e editar arquivos em uma sessão remota com a execução do comando PSEdit.Windows PowerShell ISE now lets you open and edit files in a remote session by running the PSEdit command. Por exemplo, é possível abrir um arquivo para edição desde a linha de comando em uma sessão remota da seguinte maneira:For example, you can open a file for editing from the command line in a remote session as follows:

[RemoteComputer1]: PS C:\> PSEdit C:\DebugDemoScripts\Test-GetMutex.ps1

Além disso, agora é possível editar e salvar alterações em um arquivo remoto aberto automaticamente no ISE do Windows PowerShell ao atingir um ponto de interrupção.In addition, you can now edit and save changes in a remote file that is automatically opened in Windows PowerShell ISE when you hit a breakpoint. Agora, você pode depurar um arquivo de script que está em execução em um computador remoto, editar o arquivo para corrigir um erro e executar novamente o script modificado.Now, you can debug a script file that is running on a remote computer, edit the file to fix an error, and then rerun the modified script.

Depuração de script avançadaAdvanced Script Debugging

Há novos e avançados recursos de depuração que permitem anexar a qualquer processo de computador local que tenha carregado o Windows PowerShell e depurar runspaces arbitrários no processo.There are new, advanced debugging features that let you attach to any local computer process that has loaded Windows PowerShell, and debug arbitrary runspaces in that process.

Depuração de runspacesRunspace Debugging

Foram adicionados novos cmdlets que permitem listar os runspaces atuais em um processo e anexar o console do Windows PowerShell ou o depurador do ISE a esse runspace para a depuração de script:New cmdlets have been added that let you list current runspaces in a process, and attach the Windows PowerShell console or ISE debugger to that runspace for script debugging:

  • Get-RunspaceGet-Runspace
  • Debug-RunspaceDebug-Runspace
  • Enable-RunspaceDebugEnable-RunspaceDebug
  • Disable-RunspaceDebugDisable-RunspaceDebug
  • Get-RunspaceDebugGet-RunspaceDebug

Anexar a um processo que hospeda o PowerShellAttach to Process hosting PowerShell

Agora é possível anexar a qualquer processo de computador que tenha o Windows PowerShell carregado.You can now attach to any computer process that has Windows PowerShell loaded. É possível fazer isso entrando em uma sessão interativa com o processo, de forma semelhante a como você entra em uma sessão remota interativa executando o cmdlet Enter-PSSession:You do this by entering into an interactive session with the process, similarly to how you enter into an interactive remote session by running the Enter-PSSession cmdlet:

  • Enter-PSHostProcessEnter-PSHostProcess
  • Exit-PSHostProcessExit-PSHostProcess