我想使用radare2调试程序“id3v2 -c hallo test.mp3”。
如何将参数“-c hallo test.mp3”传递给radare2?
我只在rarun2中找到了东西,但是当我执行r2 -d rarun2 program=/usr/bin/id3v2 arg1=-c arg2=hallo arg3=test.mp3
时,调试器在rarun2中,而不在id3v2中。
最佳答案
您可以通过几种方式将参数传递给radare2调试程序。
最简单的方法是:
r2 -d program arg1 arg2 arg3
另一种方法是在radare2 shell中使用
ood
命令:执行
radare2 ./program
,然后键入ood arg1 arg2 arg3
。 ood
命令用于“在调试器模式下重新打开(带有args)”。您还可以使用反引号调用带有动态参数的
ood
。例如,我们要使用系统文件中的内容作为参数来调试程序:ood `!cat file.txt`
假设file.txt的内容是'foo bar',所以这等同于执行
ood foo bar
将参数传递给radare2调试程序的另一种方法是使用
rarun2
概要文件:$ r2 -R profile.rr2 -d program
$ cat profile.rr2
#!/usr/bin/rarun2
arg1=foo
arg2=bar