如何在Ubuntu 18.04的VS Code 1.39.2任务/启动任务中打印调试消息?
当然可以输出诊断消息!
不管是通过tasks.json配置的普通任务,还是launch.json里的启动/调试任务,都能轻松在VS Code内置终端打印你想要的诊断消息,具体实现方式如下:
一、tasks.json 任务中打印消息
在tasks.json里,你只需要把打印命令(比如echo)和实际要执行的任务命令结合起来就行。举个实际的配置例子:
{ "version": "2.0.0", "tasks": [ { "label": "Run Task 1", "type": "shell", // 先打印诊断消息,再执行实际任务 "command": "echo 'Running tasks 1...' && ./your-actual-script.sh", "group": "build", "problemMatcher": [] } ] }
当你通过Terminal > Run Task...执行这个任务时,内置终端会先输出Running tasks 1...,再执行后面的脚本或命令。如果你的任务不需要额外执行其他命令,直接把command设为echo 'Running tasks 1...'就行。
二、launch.json 启动任务中打印消息
对于launch.json配置的启动/调试任务,最方便的方式是借助preLaunchTask——先执行一个专门用来打印诊断消息的前置任务,再启动调试。
- 先在
tasks.json里添加一个打印消息的任务:
{ "label": "Print Debug Info", "type": "shell", "command": "echo 'Starting debug session...'", "problemMatcher": [] }
- 然后在
launch.json的调试配置中,指定这个前置任务:
{ "version": "0.2.0", "configurations": [ { "name": "My Debug Launch", "type": "cppdbg", // 这里根据你的调试类型调整,比如node、python等 "request": "launch", "program": "${workspaceFolder}/your-program", "preLaunchTask": "Print Debug Info", // 关联刚才的打印任务 // 其他调试相关配置... } ] }
这样启动调试时,VS Code会先执行Print Debug Info任务,在终端输出诊断消息,再启动你的程序进行调试。
另外要注意,VS Code的内置终端会捕获所有shell命令的标准输出,所以只要你的任务里包含输出类命令(比如echo),就能看到对应的消息。如果是process类型的任务,可能需要调整为shell类型来支持这类输出操作。
内容的提问来源于stack exchange,提问作者AlainD
相关产品推荐
相关产品推荐

