以下是我需要做的一般示例:
例如,我会通过发送命令来启动回溯跟踪" bt"从程序到GDB。然后我会搜索一个像" pardrivr"并使用正则表达式获取与其关联的行号。然后我会输入" f [line_number_of_pardriver]"进入GDB。将重复此过程,直到最终提取出正确的信息。
我想通过创建GDB的子进程来使用Python来实现这一目标。然后我想将命令发送到GDB并从GDB读取输出。我会使用输出根据输出内容动态地向GDB发送更多命令。
有人可以提供一个如何做到的简单示例吗?
非常感谢你!
答案 0 :(得分:0)
使用Pexpect:http://pexpect.readthedocs.org/en/latest/examples.html
更基本的选择是使用subprocess.Popen().communicate()
: