【问题标题】:Resume a stopped process through command line通过命令行恢复停止的进程
【发布时间】:2012-05-28 20:13:19
【问题描述】:

我在 Linux CentOS 中执行了以下 C 代码来创建一个进程。

#include <stdio.h>
#include <unistd.h>

    int main ()
    {
          int i = 0;

          while ( 1 )
          {
                printf ( "\nhello %d\n", i ++ );
                sleep ( 2 );
          }
    }

我已将其编译为hello_count。当我做./hello_count时,输出是这样的:

hello 0
hello 1
hello 2
...

直到我杀了它。 我已经使用以下命令停止了执行

kill -s SIGSTOP 2956

当我这样做时

ps -e

进程2956 ./hello_count 仍在列出。

是否有任何命令或任何方法可以恢复(而不是重新启动)进程 ID 为 2956 的进程?

另外,当我停止进程时,命令行显示:

[1]+ Stopped      ./hello_count

上一行中的[1]+是什么意思?

【问题讨论】:

  • 对于线程操作使用 htop 它是一个很好的软件,你几乎可以用它做任何事情。这是一个命令行程序。尝试在谷歌上搜索您可以使用“kill”发送的信号类型。我现在很懒,只是提供一些线索^^

标签: linux process signals kill


【解决方案1】:
  • 要继续停止的进程,即恢复使用 kill -SIGCONT PID
  • Regd [1]+ 是 bash 处理作业的方式。如需更多信息,请尝试在 bash 提示符下帮助工作

【讨论】:

  • 非常感谢您的帮助。我要再问你一个问题吗?
  • 我正在终端中执行此操作。假设我在一个终端窗口中停止了一个进程,并且我想在另一个终端窗口中恢复相同的进程,我该怎么办?
  • Ajish Alfred:在这种情况下,我认为您必须在 screen 中启动命令。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-11-06
  • 1970-01-01
  • 2013-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多