首页 文章

将文件输入和Stdin传递给gdb

提问于
浏览
2

所以我想在gdb中运行一个程序,文件的内容作为参数 . 然后,当命中EOF时,我希望能够再次输入用户输入 . 对于终端中的普通程序,我可以使用以下命令执行此类操作 .

(cat input.txt; cat) | ./program

在gdb中,我可以传递这样的文件参数,但是在文件结束后它会继续输入换行符 .

(gdb) run < input.txt

这几乎就好像stdin没有传回程序,类似于我只是做的事情

(cat input.txt) | ./program

没有第二个 cat . 这甚至可以在gdb中进行吗?

1 回答

  • 1

    您可以在一个控制台中运行该程序,并在等待输入时使用另一个控制台中的gdb将其附加到该控制台 . 因此,您将能够在第一个控制台中输入程序输入并在第二个控制台中进行调试 .

相关问题