通过PID编号恢复进程

我想要一个守护进程在启动时启动,所以我在/etc/rc.local中添加了一行,以“&”结束我做了,所以它会在后台运行。

守护程序已加载并正常运行但是当守护程序运行时,您可以按下执行其他重要操作的键。

当我最终登录时,我想恢复进程或发送一个终端(tty2),所以我可以做几件事。

我是linux的新手,不知道如何做到这一点。

我做一个ps -aux |grep uox来计算它是哪个PID。 但不知道如何恢复。

jobs将仅列出与运行jobs命令的shell关联的jobs ,类似地, fgbg仅适用于与当前shell相同的进程树上的进程。 在这个问题的上下文中,您要附加的作业是以/etc/rc.local开头的,因此shell不是您当前所在的shell。

您可以使用screen命令( https://help.ubuntu.com/community/Screen )从/etc/rc.local启动该过程 – 这将启动它连接到伪终端,然后您可以稍后再次使用screen附加到该终端并在正在运行的程序中键入字符。

使用apt-get安装screen ,然后键入man screen以查看所有选项。 我不确定你应该把它放在rc.local ,现在还没有时间去试验,但可能会在以后更新这个答案。

从Vijay借来
使用jobs命令查找由您启动的后台进程列表。 例如:有一个脚本,它只需要在5次迭代中hibernate10秒。我在后台运行了4次。

 >jobs [1] + Running ./temp.sh [2] - Running ./temp.sh [3] Running ./temp.sh [4] Running ./temp.sh 

fg是将其恢复到前台的命令,如下所示。

 >fg 1 [CTRL -c] 

如上所述,我已经结束了这个过程,它已不复存在。 现在如果我再次开始jobs

 >jobs [2] + Running ./temp.sh [3] Running ./temp.sh [4] - Running ./temp.sh > 

您也可以在这里查看更多信息

您可以使用kill命令从任何shell通过PID编号恢复进程。

 kill -CONT  

不要忘记-CONT部分,否则你将终止你的过程。

PS David Purdue是正确的,fg和bg仅适用于同一进程树上的进程。 他的解决方案似乎更适合您的需求。 但是因为标题是“通过PID号恢复进程”,我发现其他需要它的人可能想要找到它。