【问题标题】:Debugging using Visual Studio Code and piping terminal output to a file使用 Visual Studio Code 进行调试并将终端输出通过管道传输到文件
【发布时间】:2019-09-10 13:03:32
【问题描述】:

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

这是我的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"
        }
    ]
}

有没有一种简单的方法可以做到这一点?

【问题讨论】:

  • 查看您当前的launch.json 可能会有所帮助。你正在启动什么调试程序(gdb)?什么平台(Windows?)。您希望被调试进程的输出到文件,还是到文件以及 VSCode 终端窗口?
  • 感谢@ScottMcPeak,我相应地更新了问题(下次我提出问题时会提供更多信息)。正如您在下面的答案中注意到的那样,我设法破解了一个解决方案,但它似乎不是很强大,所以也许有更好的方法。

标签: visual-studio-code terminal cmake vscode-debugger


【解决方案1】:

由于我使用的是 cmake,因此我可以在我的 settings.json 文件中使用 cmake.debugConfig 来实现这一点:

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

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

【讨论】:

  • 感谢您的提问和回答。 Google 员工,您可以使用 Intellisense (Ctrl+Space) 来判断 this 或“args”对您是否合法。我没有使用 cmake,所以我能做的最好的就是将控制台复制到剪贴板:stackoverflow.com/questions/37153675/….
猜你喜欢
  • 2017-01-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-02-08
  • 1970-01-01
  • 2019-01-24
  • 2015-07-22
  • 2011-01-27
相关资源
最近更新 更多