假设你有一个程序在前台运行,按 Ctrl+Z,然后:
[1]+ Stopped myprogram
$ disown -h %1
$ bg 1
[1]+ myprogram &
$ logout
如果只有一项工作,则无需指定工作编号。只需使用
disown -h
和 bg
。
您按 Ctrl+Z。系统暂停正在运行的程序,显示作业编号和“已停止”消息,然后返回到 bash 提示符。
您键入
disown -h %1
命令(此处,我使用了 1
,但您将使用 Stopped
消息中显示的作业编号),该命令标记作业,因此它会忽略 SIGHUP
信号(注销不会停止)。
接下来,使用相同的作业编号键入
bg
命令;这将恢复程序在后台的运行,并显示一条消息来确认。
您现在可以注销,它将继续运行..
我会尝试该程序screen。
在后台启动:
./long_running_process options &
并在退出之前否认该工作:
disown
screen
,分离并重新连接