一些常用的调试命令

本文将针对一些常用的调试命令进行总结。

基本命令

strace1

strace命令通过调用调试API,查看某个命令执行过程,例如我们使用strace调试下列命令:

1
strace yes | true

会得到如下结果:

1
2
3
write(1, "y\ny\ny\ny\ny\ny\ny\ny\ny\ny\ny\ny\n"..., 4096) = -1 EPIPE (Broken pipe)
--- SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=17556, si_uid=1000} ---
+++ killed by SIGPIPE +++

我们会看到这个命令最终的结局,触发了一个broken pipe,然后被SIGPIPE杀死

参考文献

0%