2016-07-29 42 views
2

如何通过我使用以下命令中GDB执行的一个的.py脚本的输出:传递一个的.py脚本的输出到另一个GDB

(gdb)source myfilename.py 

到另一个的.py脚本myfilename2.py

例如:在GDB中运行MYFILE myfilename.py我得到的结果如下

(gdb)source myfilename.py 
(gdb)print $function("input") 
(gdb)$1 = someoutput` 

如果我想通过$ 1中输入到另一个的.py脚本我怎么做。

感谢您的帮助。

回答

0

您的程序输入不能使用GDB变量$ 1的内容,因为程序启动是由shell执行的,而不是由gdb执行的。

可以存储在文件脚本输出,推出GDB的可执行文件,并使用命令

(gdb)run <outputfile 

或者使用命名管道,作为建议in this answer

3

我不确定您是否可以在gdb中运行其他python程序输出到另一个程序,但是您当然可以传递像这样的命令的输出。

(gdb) run "`python -c 'print "\xff\xff\xff\xff"'`" 

可能是您可以尝试传递第二个.py文件而不是命令,以便将其输出传递到第一个.py。

相关问题