是否可以将前台进程置于后台而不挂起(control + z)?

rah*_*til 12 linux unix bash

我正在运行一个接收 TCP 和 UDP 数据包的应用程序,因此无法暂停。我最初在后台模式下使用&. 当我只做时$fg,所有三个进程都进入了前台。现在我想再次将它们发送到后台但没有暂停。我怎样才能做到这一点?

Ste*_*del 13

第一件事:前台只能有一个进程,而不是所有三个进程。fg将最新的进程带到前台。为了使Ctrl+的过程z,然后键入bg更快以不“干扰”有问题的应用程序(请注意,进程调度程序每秒将执行此操作多次),在前台找出进程的PID,然后在第二个终端/SSH 会话,使用

kill -SIGSTOP »pid« ; kill -SIGCONT »pid«
Run Code Online (Sandbox Code Playgroud)

您的原始终端会说stopped,但由于您立即发送了SIGCONT,该过程将继续在后台运行。