配置
Radare2核心在启动时会读取~/.config/radare2/radare2rc
,可以在该文件中添加e
类命令,根据自己的喜好调整radare2配置。
如果不想Radare2在启动时解析该配置文件,启动时就要指定-N
选项。
radare2中一切配置都是通过eval
命令实现的,典型的启动配置文件长这样:
$ cat ~/.radare2rc
e scr.color = 1
e dbg.bep = loader
也可以通过在命令行指定-e
选项修改配置,这个方法可以在保持.radare2.rc文件不变的情况下调整配置。例如下面的这个命令将在不读取配置文件的情况下启动radare2,并修改scr.color
和asm.syntax
变量。
$ radare2 -N -e scr.color=1 -e asm.syntax=intel -d /bin/ls
在r2内部,配置存在一个哈希表里,分割为不同的命名空间:cfg.
, file.
, dbg.
, scr.
等等。
获取所有的配置变量只需在命令行中敲入e
,若仅想显示指定空间中的变量就在e
后面加上对应的名称,以.
作为结尾。例如e file.
会显示"file"命名空间中定义的所有变量。
e?
可以了解相应的帮助信息
Usage: e [var[=value]] Evaluable vars
| e?asm.bytes show description
| e?? list config vars with description
| e a get value of var 'a'
| e a=b set var 'a' the 'b' value
| e var=? print all valid values of var
| e var=?? print all valid values of var with description
| e.a=b same as 'e a=b' but without using a space
| e,k=v,k=v,k=v comma separated k[=v]
| e- reset config vars
| e* dump config vars in r commands
| e!a invert the boolean value of 'a' var
| ec [k] [color] set color for given key (prompt, offset, ...)
| eevar open editor to change the value of var
| ed open editor to change the ~/.radare2rc
| ej list config vars in JSON
| env [k[=v]] get/set environment variable
| er [key] set config key as readonly. no way back
| es [space] list all eval spaces [or keys]
| et [key] show type of given config variable
| ev [key] list config vars in verbose format
| evj [key] list config vars in verbose format in JSON
e
命令有一个更易用的图形化替代品,可以通过Ve
命令进入,使用方向键(上,下,左,右)在配置变量间进行切换,按下q
可以退出。编辑配置的初始界面看起来是这样的:
[EvalSpace]
> anal
asm
scr
asm
bin
cfg
diff
dir
dbg
cmd
fs
hex
http
graph
hud
scr
search
io
对于一些值存在选择范围的配置变量来说,可以用=?
列出可选的值:
[0x00000000]> e scr.nkey = ?
scr.nkey = fun, hit, flag
如果不确定配置变量对应的效果,可以用e?[conf_var]
显示该变量对应的描述: If you are not sure about the effect of configuration, you can use e?[conf_var]
to display the corresponding description.
[0x00005b20]> e?scr.nkey
scr.nkey: Select visual seek mode (affects n/N visual commands)
显示所有配置变量的描述然后从中抓取所想要的特性/配置也很方便,下面的这个命令获取scr.
下所有命令的描述,然后仅展示其中包含utf
的行。 It's also very convenient to list all the configuration variables and grep the features/configuration you want. The following command fetches the description to variables under scr.
and display only those lines contain utf
.
[0x00005b20]> e?scr ~utf
scr.utf8: Show UTF-8 characters instead of ANSI
scr.utf8.curvy: Show curved UTF-8 corners (requires scr.utf8)
最后更新于
这有帮助吗?