附加到C中的进程

时间:2011-11-27 03:50:05

标签: c linux

我正在实现一个netcat克隆,目前需要一种通过网络运行命令行程序的方法。

到目前为止,我的解决方案是执行一个进程并为STDIN和STDOUT使用管道,然后通过TCP来回转发数据。

问题是,我觉得这是一种全面的做事方式。当我运行bash时,提示没有显示,我无法使用ncurses程序,如Vi。

是否有更简单的方法来控制输入并在C中查看程序的输出,或管道是我最好的选择?

这是我的一部分代码(点击它,非常直观):

http://pastebin.com/MjyxFkdu

我在GNU / Linux中使用C.

1 个答案:

答案 0 :(得分:2)

使用管道无法获得正确的终端行为 - 您需要使用PTY (pseudoterminal)来获得正确的结果。

请注意,您在此处撰写的内容基本上是telnetd ...