这是我需要做的一般示例:
例如,我将通过从程序向 GDB 发送命令“bt”来启动回溯。然后,我将搜索诸如“pardrivr”之类的单词,并使用正则表达式获取与其关联的行号。然后我将“f [line_number_of_pardriver]”输入到GDB中。这个过程将不断重复,直到最终提取出正确的信息。
我想使用Python通过创建GDB的子进程来完成此任务。然后我想向 GDB 发送命令并从 GDB 读取输出。我将使用输出根据输出内容动态向 GDB 发送更多命令。
有人可以提供一个简单的例子来说明如何做到这一点吗?
非常感谢!
最佳答案
使用 Pexpect:http://pexpect.readthedocs.org/en/latest/examples.html
一个更基本的选项是使用subprocess.Popen().communicate()
:
关于python - 如何使用Python创建GDB子进程并根据输出动态发送命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25000160/