关闭终端窗口/会话后获取bg作业到fg

时间:2014-07-15 08:15:16

标签: terminal background-process jobs background-foreground

TL; DR关闭终端窗口后,如何在bg(前台)中获得fg(后台)作业?

我已经使用终端启动Spotify并将其放入CTRL+Zbg的后台。在此窗口中,所有内容都按预期工作:fg将进程再次置于forground中,jobs将Spotify视为正在运行的进程。如果我关闭终端窗口会出现问题。

关闭终端窗口并打开新的终端窗口后,jobs命令找不到Spotify在后台运行。因此,我无法再访问停止或关闭的过程。

此行为有什么好处CTRL+Zfgbg& jobs?我怎样才能收回我的流程?

2 个答案:

答案 0 :(得分:4)

您可以通过ps -A搜索旧流程。或ps -A | grep <application name>。 如果找到了,请使用reptyr <pid>在新控制台上获取应用程序。 但如果您关闭了旧终端,所有终端应用程序也可能会关闭,所以为时已晚。

在启动应用之前使用screen。这将帮助您从其他终端重新连接到您的会话。

答案 1 :(得分:1)

作业编号仅指在当前shell下运行的后台进程。 shell无法知道与旧shell相关的作业号。