我一直在玩radare2,我想知道对我来说似乎几乎是显而易见的事情,但是在兔子洞里经过大量搜索之后,我找不到如何查看正在调试的二进制文件的控制台输出。例如,我看不到hello world程序的输出,我只能看到寄存器和反汇编的指令...

任何人都不知道要按哪个键序列来查看控制台的输出我正在调试的二进制文件?

#1 楼

您可以使用rarun2来操纵程序的stdin,stdout,参数等。要回答您的问题,默认情况下,radare2不会在调试器模式下启动,因此您的程序将无法运行。如果要调试它,则必须以-d标志在调试器模式下启动radare2,或者以ood命令在此模式下重新打开二进制文件。

您的程序输出将显示为通常,在控制台上:

$ r2 -d /usr/bin/uptime
Process with PID 25656 started...
= attach 25656 25656
bin.baddr 0x557d50ca7000
USING 557d50ca7000
Assuming filepath /usr/bin/uptime
asm.bits 64
 -- Press 'C' in visual mode to toggle colors
[0x7f016bfd4ca0]> dc
Selecting and continuing: 25656
 22:02:48 up  4:26,  6 users,  load average: 0.18, 0.25, 0.29
PTRACE_EVENT_EXIT pid=25656, status=0x0
[0x7f016bab5b68]>