python无法使用radare2打开文件:选项“0”无效

2024-09-26 22:55:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用pip install安装了radare2,然后在pythonshell中给出了以下几行代码

Python 2.7.6 (default, Jun 22 2015, 17:58:13) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import r2pipe
>>> r = r2pipe.open("/bin/ls")
radare2: invalid option -- '0'

我已经交叉检查了/bin/ls是否可用。为什么我得到这个错误?在


Tags: installpip代码defaultbinontypehelp
2条回答

我是这样做的:

  1. 转到https://github.com/radare/radare2,将项目克隆到我的笔记本电脑上,然后通过sys/install.sh安装它(radare2自述包含所有说明)

  2. pip安装r2pipe(我在ubuntu14.04上安装了python2.7.6)

下面是我从python控制台得到的输出:

>>> r2 = r2pipe.open("/bin/ls")
>>> print(r2.cmd("pd 10"))
;  entry0:
            0x00404890      31ed           xor ebp, ebp
            0x00404892      4989d1         mov r9, rdx
            0x00404895      5e             pop rsi
            0x00404896      4889e2         mov rdx, rsp
            0x00404899      4883e4f0       and rsp, 0xfffffffffffffff0
            0x0040489d      50             push rax
            0x0040489e      54             push rsp
            0x0040489f      49c7c0d01e41.  mov r8, 0x411ed0
            0x004048a6      48c7c1601e41.  mov rcx, 0x411e60
            0x004048ad      48c7c7c02840.  mov rdi, 0x4028c0           ; "AWAVAUATUH..S..H...." @ 0x4028c0
>>> print(r2.cmdj("pd 10"))
r2pipe.cmdj.Error: No JSON object could be decoded
None

请确保正确安装radare2。您可以尝试uninstall您当前的radare2并从头开始安装,以防radare端出现一些版本问题。在

对我来说,解决方案是从gitrepository安装radare2,而不是从过时的Ubuntu存储库安装radare2。在

安装就像运行sys/install.sh一样简单。注意,这会覆盖任何现有的radare2安装,您可能需要在安装之前使用包管理器(例如apt-get remove radare2)将其删除。在

相关问题 更多 >

    热门问题