将gdb里反汇编的代码输出到文件


在做拆炸弹实验的时候,我想把反汇编出来的各个段的代码存入文件,这样比较方便查看——我可以再开一个终端,打开文件看汇编代码,然后在原来的终端里继续调试。objdump可以重定向标准输出或者直接使用管道,但是gdb里面不支持,它会这样~

它会告诉你:“Attempt to extract a component of a value that is not a structure.”,就是gdb里面没有这玩意儿,没法用。

到网上搜了一下,然后看到3、4行set xxxx的,还是把gdb的所有输出都弄到一个文件里

如果能把各段分离出来,4行命令我也就认了,仍然是直接吞了gdb的所有输出,我为嘛直接在gdb后面加管道呢?

于是,我试了一下直接加管道:

它直接将我后面的文件名当作了命令,仔细想了想,确实会这样,毕竟管道就是连接命令的,那就重定向输出好了,于是:

所有输出就看不到了,我只能盲打命令,这显然不是我想要的,我想要既能看到它的输出,又将我后面汇编的代码存入文件。想到这儿,解决方法就出来了——用tee分离输出:

Nice~~

再看一下输出的文件好了:

打开发现,多了一堆东西,删了就行了~

以上操作挺繁琐的,但也是确实实现了我要干的事情,就很Nice~


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM