將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