我可以nohup /屏幕已经启动的进程吗?

Modified on: Wed, 13 Nov 2019 11:20:02 +0800

我正在通过SSH对长期运行的数据迁移脚本进行一些测试运行。假设我在下午4点左右开始运行脚本;现在,下午6点左右,我正在诅​​咒自己没有在screen中完成所有这些。

有没有办法“追溯”nohup一个过程,还是我需要让我的电脑整夜在线?如果无法将screen附加到/ nohup我已经开始的流程,为什么呢?与父/子过程如何相互作用有关? (我不会接受一个“不”的答案,至少没有解决'为什么'的问题 - 抱歉;)

作者:,ojrac

最佳答案

如果你正在使用Bash,你可以运行disown -h job

  

disown

disown [-ar] [-h] [jobspec ...]

  
  

如果没有选项,则会从活动作业表中删除每个jobspec。
  如果给出-h选项,则为该作业
  没有从表中删除,但是
  标记为不发送SIGHUP
  如果shell收到一个
  SIGHUP。如果jobspec不存在,和
  既不是-a也不是-r选项
  提供,使用当前的工作。如果
  没有提供jobspec,-a
  选项意味着删除或标记所有
  工作;没有的-r选项
  jobspec参数限制操作
  跑步。

作者:Community,gharper

相关问答

添加新评论