首页 > 解决方案 > 使用 Visual Studio Code 进行调试并将终端输出通过管道传输到文件

问题描述

我正在使用 VS Code 在 Ubuntu 上调试应用程序,使用 launch.json 文件和 cmake 来构建和调试。这工作正常,我可以按预期在终端中看到程序的输出。但是,我想自动将此输出保存到文件中。我这样做的方式通常是类似的mycommand > terminal_output.txt,但是我找不到使用launch.json 文件复制它的方法,或者通过终端运行调试(例如类似的东西debug --flags launch.json > terminal_output.txt)。

这是我的launch.json供参考:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "g++-8 build and debug active file",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "g++-8 build active file",
            "miDebuggerPath": "/usr/bin/gdb"
        }
    ]
}

有没有办法以简单的方式做到这一点?

标签: visual-studio-codeterminalcmakevscode-debugger

解决方案


由于我使用的是 cmake,因此我可以cmake.debugConfig在我的settings.json文件中使用:

{
    "cmake.debugConfig": {
        "args": [
            ">",
            "test.txt"
        ]
    }
}

"args"但是,添加launch.json并不起作用。


推荐阅读