如何抑制gdb正在运行的进程附件信息?

如何抑制gdb正在运行的进程附件信息?,gdb,Gdb,从dbx移动到gdb: 我想永久地抑制gdb在我的终端上打印出来的信息,同时将其全部附加到正在运行的进程上。有人知道怎么做吗?谢谢你的帮助 示例(64位CentOS 6.6)会话: 实际上,有多个屏幕显示上述“读取”和“加载”条目,出于理智考虑,我正在手动抑制这些条目。还有4 100个字符长的关于“缺少单独的调试信息”的投诉行,我也在为帖子手动抑制 我一点也不想看到。我想要的是: gbd -p 12345 in nanosleep () from /lib64/libc.so.6 这有点没用-

从dbx移动到gdb:

我想永久地抑制gdb在我的终端上打印出来的信息,同时将其全部附加到正在运行的进程上。有人知道怎么做吗?谢谢你的帮助

示例(64位CentOS 6.6)会话:

实际上,有多个屏幕显示上述“读取”和“加载”条目,出于理智考虑,我正在手动抑制这些条目。还有4 100个字符长的关于“缺少单独的调试信息”的投诉行,我也在为帖子手动抑制

我一点也不想看到。我想要的是:

gbd -p 12345
in nanosleep () from /lib64/libc.so.6
这有点没用-当前文件和函数名加上行号和线程id在哪里?但我愿意忽略这一点。现在更感兴趣的是抑制输出(而不是引发输出)


使用gdb很容易实现吗?.gdbinit中的条目或类似的条目?再次感谢。

据我所知,没有办法禁用这些

如果您在上设置了“打印劣质事件”,则会打印一些额外的消息。所以,请确保它已关闭。但是,它可能是为你,因为这是默认的

您可以使用
define
编写自己的包装器,并将输出重定向到
/dev/null
,从而使某些特定命令安静下来

我认为给予用户更多的输出控制权将是gdb合理的功能要求。

解决了

虽然我无法通过将“缺少单独的debuginfos”投诉重定向到/dev/null来消除这些投诉,但我还是按照他们的建议解决了这些问题:

  • 成为根
  • vi/etc/yum.repos.d/CentOS-Debuginfo.repo
  • 将“已启用=0”更改为“已启用=1”
  • 保存并退出vi
  • yum安装yum-utils
  • debuginfo安装glibc
  • debuginfo安装keyutils libs
  • debuginfo安装krb5 libs
  • debuginfo安装libgcc
  • debuginfo安装libuuid
  • debuginfo安装openssl
  • gdb会话现在看起来更干净了。谢谢。

    您可以使用命令
    set build id verbose 0
    抑制“缺少单独调试信息”投诉(此设置似乎没有很好的文档记录)

    如果在使用gdb启动程序时出现这些警告,则在
    .gdbinit
    文件中包含该行可能会很有用

    gbd -p 12345
    in nanosleep () from /lib64/libc.so.6