我正在使用带有posix的fedora 15,我想在一个新的终端窗口中分叉我的子进程,在那里我只能与子进程进行交互,而父进程仍保留在原始终端中。我不想执行,因为这需要我重新安排我的所有代码,因为我不得不在此刻展示我的项目。这有可能吗?怎么样? 我试过forkpty,但它给了我一个编译错误。
答案 0 :(得分:1)
了解man screen
。我认为这可能是你正在寻找的......
例如,您可以运行:
screen -dmS SESSION_NAME bash -c "COMMAND"
其中SESSION_NAME名称是会话的名称,并命令您要执行的命令。通过这种方式,它将作为守护进程启动,与当前shell分离。您没有义务这样做,但似乎解决方案更适合您的问题。如果您希望它在前台,请删除-dmS SESSION_NAME
。
然后,您可以通过以下方式与孩子互动:
screen -r SESSION_NAME
您可以使用以下命令返回主shell:
screen -d