今天發(fā)現(xiàn)了 gdb 的一個功能很好用 , 分享出來 :
GDB 的宏定義功能
具體的使用方法是 :
鍵入 define [KEYWORD]
然后輸入你想要在輸入 KEYWORD 的時候執(zhí)行的命令
每一行輸入一條
輸入 end 可以結(jié)束輸入
這里總結(jié)了一個比較簡單的宏定義 :
define k
si
printf "-------------------------------------- [Stack] --------------------------------------\n"
x /16xb $esp
printf "-------------------------------------- [Registers] --------------------------------------\n"
printf "[eax]:%08x\t[ebx]:%08x\t[ecx]:%08x\t[edx]:%08x\n", $eax, $ebx, $ecx, $edx
printf "[esi]:%08x\t[edi]:%08x\t[esp]:%08x\t[ebp]:%08x\n", $esi, $edi, $esp, $ebp
printf "[cs] :%04x\t[ss] :%04x\t[ds] :%04x\t[es] :%04x\t[fs] :%04x\t[gs] :%04x\n", $cs, $ss, $ds, $es, $fs, $gs
printf "[eip]:%08x\t[eflags]:%08x\n", $eip, $eflags
printf "-------------------------------------- [Codes] --------------------------------------\n"
x/8i $pc
printf "=========================================================================================\n"
end
執(zhí)行效果如下 :