如何在 gdbinit 脚本中使用 python
How to use python into gdbinit script
当 gdb 初始化时,我使用 gdbinit
文件来 运行 几个命令。
如何使用 python 命令?而不是使用 x/x $pc
我想在 $PC 寄存器后用 binascii
10 个字节打印。
我该怎么做?
结合 with this one 我们最终得到:
(gdb) x/10x $pc
0x55555555515d <main+8>: 0x48 0x8d 0x35 0xa0 0x0e 0x00 0x00 0x48
0x555555555165 <main+16>: 0x8d 0x3d
(gdb) source .gdbinit.py
488d35a00e0000488d3d
其中 .gdbinit.py
包含:
import binascii
import gdb
i = gdb.inferiors()[0]
pc = gdb.parse_and_eval("$pc")
m = i.read_memory(pc, 10)
print binascii.hexlify(m)
当 gdb 初始化时,我使用 gdbinit
文件来 运行 几个命令。
如何使用 python 命令?而不是使用 x/x $pc
我想在 $PC 寄存器后用 binascii
10 个字节打印。
我该怎么做?
结合
(gdb) x/10x $pc
0x55555555515d <main+8>: 0x48 0x8d 0x35 0xa0 0x0e 0x00 0x00 0x48
0x555555555165 <main+16>: 0x8d 0x3d
(gdb) source .gdbinit.py
488d35a00e0000488d3d
其中 .gdbinit.py
包含:
import binascii
import gdb
i = gdb.inferiors()[0]
pc = gdb.parse_and_eval("$pc")
m = i.read_memory(pc, 10)
print binascii.hexlify(m)