我知道用 & 来终止命令,然后按 Ctrl-Z 再按 bg [pid] 将其移到后台,我也知道 nohup。
但是假设你启动了一个进程,而该进程所花的时间比预期的要长得多,有没有办法可以将这个进程从另一个终端屏幕拉到后台,这样即使我从服务器上注销,该进程也会继续?
答案1
暂停:
CtrlZ
后台重启:
bg
并告诉 shell 在注销(SIGHUP)时不要杀死它:
disown
注意:Plain
disown
会将该作业从 shell 的jobs
列表中完全删除,而disown -h
仅将其标记为“注销时不终止”但保留在列表中。
答案2
首次登录时务必运行“screen”。查看https://launchpad.net/byobu 我使用 byobu 在每次登录时自动启动屏幕会话。这样,我可以自动运行屏幕,并且我可以在需要时断开会话或启动新窗口。