【问题标题】:view job in unix after closing putty关闭腻子后在 Unix 中查看作业
【发布时间】:2015-04-02 22:24:24
【问题描述】:

我使用 nohup & 运行作业并获得作业 ID xxxxx。通过使用命令 jobs -l 我可以在同一个会话中看到我的工作及其关联的 id。但是,当我关闭我的腻子会话并打开一个新会话时,作业 -l 不再返回我的工作。如何纠正?

我确定该作业仍在运行,因为该作业导致文件大小不断增长(处理十亿行数据)。

【问题讨论】:

  • 如果您需要启动一个进程并稍后再回来监视/控制它,screen 或tmux 可能比nohup/background 作业更适合您的需求。

标签: unix jobs nohup


【解决方案1】:

根据Linux Server Hacks,答案是“否”,在这种情况下不能重新连接:父进程已经死亡。如果您是从 screen 或 tmux 执行此操作的,那么重新附加到这些会话将使您返回父进程。

作为替代方案,您可以使用诸如gdb 之类的调试器或诸如strace 之类的工具附加到您的进程。这方面已在其他问题中涉及:

【讨论】:

    【解决方案2】:

    尝试使用 ps 命令,您可以使用它来查找系统上运行的所有进程。具体来说,当您重新登录时,请输入:

    ps -ef | grep xxxx
    

    其中 xxxxx 是 nohup 报告的进程 ID。

    【讨论】:

    • 我认为 OP 希望能够再次与流程进行交互。他们知道它仍在运行,因为它的输出文件正在增长,所以在进程列表中看到它的条目并没有增加太多。
    猜你喜欢
    • 2022-10-13
    • 1970-01-01
    • 1970-01-01
    • 2015-10-15
    • 2011-01-31
    • 2016-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多