0

我使用 fork() 来执行另一个程序,例如“vim”或“man bash”。但是,在那一刻我失去了控制,我无法在 vim 或 scroll 中打印任何东西。

所以,我的问题是:如何让孩子完全访问终端(输入/输出)并在孩子死后将其取回给父母?

4

1 回答 1

0

所以,我的问题是:如何让孩子完全访问终端(输入/输出)并在孩子死后将其取回给父母?

waitpid()并且SIGCHLD是用于知道子进程何时完成的机制。tcgetpgrp(fd)tcsetpgrp(fd,pgrp)和函数ctermid()可用于将程序放置在终端的前台

否则,tcsetpgrp()“C”中的信息可能具有指导意义。

于 2013-12-22T18:27:59.887 回答