在给定PID下使用bg和fg

问题描述 投票:2回答:2

我正在使用Ubuntu。

如果为我提供了作业的PID,如何将已暂停的作业带入后台/前景和运行状态?

我知道bg/fg,但他们需要job id而不是PID

另外,我暂停工作于

kill -STOP <PID>

而且我知道我可以通过以下方式恢复它

kill -CONT <PID>

但是我不知道如何在此PID中使用bg和fg命令。

编辑:我想澄清这一点:

方案:我有一个暂停的工作,我知道它的PID。我该如何带回去并使其成为背景?

linux bash shell jobs
2个回答
3
投票

您可以使用topps命令查看所有PID,也可以使用pidof命令获得PID

例如,我想检查PID命令的bash,所以我会写:

pidof bash

或使用ps命令可以编写

ps -C bash 

或使用psgrep,您可以写:

ps aux | grep bash

或只是写top并检查您需要的内容。

用于向bgbackground发送命令,您必须在命令末尾添加&,例如,我想将xeyes发送至bg,所以我会写:

xeyes &

如果您想将其带到foregroundfg,您将写:

fg xeyes

您还可以使用jobs -l命令查看所有作业。

例如,我想向sleep发送一个bg命令,然后再次将其带到fg,最后我想将其kill发送给它,所以我将写::

sleep 1000&#此命令将sleep发送到后台,并为此创建一个PID,在这种情况下,例如,将向我显示类似这样的内容

[1] 6331

现在好,我想将其带到foreground,所以我会写:

fg 6331 # now my sleep in foreground again 

您也可以使用:]杀死它

kill 6331 # this action will kill command via PID 

0
投票

您不能将fg和bg与pid一起使用。它们是shell内置的-s,需要jobspec,而不是pid。

© www.soinside.com 2019 - 2024. All rights reserved.