IT技术博客大学习 共学习 共进步

GDB常用指令说明

架构研究室 2010-01-08 12:07:42 浏览 3,986 次

    因为工作用到.所以写这个东西留着以后防止忘记

    关于各个指令我会重新表述一下作用,尽量简单易懂

    要完整的说明可以网上搜,但是大多抄来抄去没太大意思

    start - 开始调试,并且自动在main开始处中断(break)

    b [函数名] - 在指定函数处设置断点

    b [文件名]:[行数] - 在指定文件的行数处设置断点

    b [文件名]:[函数名] - 在指定文件的函数处设置断点

    s - 执行下一步语句,如果有函数就跳进去继续执行

    n - 执行下一步语句,不会跳入函数

    i b - 查看已经设置的断点(break)

    en b [断点编号] - 启用断点

    d b - 删除所有断点

    d b [断点编号] - 删除指定编号

    c - 继续运行直到断点

    finish - 继续运行直到函数返回

    frame - 查看当前的运行到的位置

    dis [变量名] - 监控指定变量值,每次执行s,n或者c之后会显示

    dis [函数名]::[变量名] -监控指定函数的变量,对于当前位于某函数内需要监控全局变量很有用

    i dis - 显示监控信息,添加了监控变量多少个,每个是什么

    en dis [监控编号] - 如果监控变量是未赋值的,会自动disable掉这个监控,使用en把监控重新打开

    d d - 删除所有监控

    d d [监控编号] - 删除指定监控

    q - 退出gdb

    set follow-fork-mode [parent/child] - child为fork产生时跳入子进程,parent为继续监控主进程

    set detach-on-fork [on/off] - 当跳入子进程的时候,on为主进程继续运行,off为暂停主进程的执行

建议继续学习

  1. vim几个小技巧(批量替换,列编辑) (阅读 37,265)
  2. 调试工具之GDB (阅读 14,703)
  3. ps - 按进程消耗内存多少排序 (阅读 12,524)
  4. find命令的一点注意事项 (阅读 11,683)
  5. gdb的基本工作原理是什么? (阅读 11,523)
  6. 100个常用的linux命令 (阅读 11,445)
  7. 每个程序员都应该知道的8个Linux命令 (阅读 10,586)
  8. 最受欢迎的10个 Linux 单行命令 (阅读 10,003)
  9. Linux date 命令获取某日期的前一天 (阅读 9,726)
  10. ps 命令常见用法 (阅读 9,325)