我有一个程序,需要很多时间才能完成。它以root身份通过ssh运行。 我希望它在注销后继续运行,这可能吗,我将如何实现?
假设您有一个在前台运行的程序,请 按ctrl-Z ,然后:
[1]+ Stopped myprogram $ disown -h %1 $ bg 1 [1]+ myprogram & $ logout
如果只有一项作业,则无需指定作业号。只需使用disown -h和即可bg。
disown -h
bg
您按ctrl-Z。系统挂起正在运行的程序,显示作业编号和“已停止”消息,并返回到bash提示符。
您键入disown -h %1命令(该命令已在其中使用1,但您将使用Stopped消息中显示的作业编号),该命令标记了该作业,因此它忽略了SIGHUP信号(不会因注销而停止)。
disown -h %1
1
Stopped
SIGHUP
接下来,bg使用相同的作业编号键入命令;这将在后台继续运行程序,并显示一条消息确认。
您现在可以注销,它将继续运行。