使用Powershell ISE我经常在脚本中设置断点并从命令行启动脚本。然后ISE在断点处停止并让我从那里进行调试。我如何从Visual Studio Code中的终端做同样的事情?下面是一个脚本,只是为了向您展示我的意思。从终端开始我会写:
。\ hello.ps1 -firstName" firstName" -lastName" theLastName"
但是从终端这样做只会启动一个新窗口。
param(
[string]$firstName,
[string]$lastName
)
Write-Host "Starting test script"
try
{
Write-Host "Hello $firstName $lastName"
}
catch
{
Write-Error "Error. Exception: $_"
}
write-host "Script done"
答案 0 :(得分:1)
也许这可能会有所帮助......它涉及修改工作区中的launch.json文件。
https://github.com/PowerShell/vscode-powershell/tree/master/examples#passing-arguments-to-the-script
答案 1 :(得分:1)
要使 Eickhel Mendoza 的链接中的信息显式 - 解决方案是设置一个运行和调试配置文件。这是在 .vscode/launch.json
中创建的。这个案例的内容是:
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch Hello Script",
"type": "PowerShell",
"request": "launch",
"script": "${workspaceFolder}\\hello.ps1",
"cwd": "${workspaceFolder}",
"args": ["-firstName \"firstName\" -lastName \"theLastName\""]
}
]
}
然后只需打开 VSCode 上的“运行和调试”侧边栏窗格(播放按钮和错误或 Ctrl
+Shift
+D
),您可以在其中运行启动脚本并且您设置的任何断点都将按预期命中。