Linux:如何“分叉”不在新的终端窗口中执行新进程?

时间:2012-06-14 19:49:15

标签: linux process fork

我正在使用带有posix的fedora 15,我想在一个新的终端窗口中分叉我的子进程,在那里我只能与子进程进行交互,而父进程仍保留在原始终端中。我不想执行,因为这需要我重新安排我的所有代码,因为我不得不在此刻展示我的项目。这有可能吗?怎么样? 我试过forkpty,但它给了我一个编译错误。

1 个答案:

答案 0 :(得分:1)

了解man screen。我认为这可能是你正在寻找的......

例如,您可以运行:

screen -dmS SESSION_NAME bash -c "COMMAND"

其中SESSION_NAME名称是会话的名称,并命令您要执行的命令。通过这种方式,它将作为守护进程启动,与当前shell分离。您没有义务这样做,但似乎解决方案更适合您的问题。如果您希望它在前台,请删除-dmS SESSION_NAME

然后,您可以通过以下方式与孩子互动:

screen -r SESSION_NAME

您可以使用以下命令返回主shell:

screen -d