我在服务器上运行nohup进程。当我试图杀死它,我的油灰控制台关闭。

这是我如何试图找到进程ID:

ps -ef |grep nohup 

这是杀人的命令

 kill -9 1787 787

当前回答

这适用于mi fine在mac上

kill -9 `ps -ef | awk '/nohup/{ print \$2 }'`

其他回答

这在Ubuntu中是有效的

输入这个来找出PID

ps aux | grep java

所有有关java的运行过程将被显示

对我来说

johnjoe      3315  9.1  4.0 1465240 335728 ?      Sl   09:42   3:19 java -jar batch.jar

现在杀死它杀死-9 3315

僵尸进程终于停止。

假设我在后台用下面的命令运行ruby脚本

nohup ruby script.rb &

然后我可以通过指定命令名来获取上述后台进程的pid。在我的例子中,命令是ruby。

ps -ef | grep ruby

输出

ubuntu   25938 25742  0 05:16 pts/0    00:00:00 ruby test.rb

现在您可以使用kill命令轻松地终止进程

kill 25938

我在VPS服务器上使用red hat linux(并通过SSH - putty),对我来说,以下工作:

首先,列出所有正在运行的进程:

ps -ef

然后在第一列中找到您的用户名;我发现它有以下三次:

一个是SSH连接 第二个是FTP连接 最后一个是nohup过程

然后在第二列中,你可以找到nohup进程的PID,你只需要输入:

kill PID 

(当然是用nohup进程的PID替换PID)

就是这样!

我希望这个答案对一些人有用,我也是bash和SSH的新手,但在这里找到了我需要的95%的知识:)

如果您不知道PID,那么首先使用TOP命令找到它

top -U用户id

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

您将使用top获取PID,然后执行终止操作。

$ kill -9 <PID>

假设您正在使用nohup执行java程序,您可以通过

`ps aux | grep java`

输出

xxxxx     9643  0.0  0.0  14232   968 pts/2   

然后您可以通过输入来终止该进程

sudo kill 9643

或者让我们说,您需要杀死所有的Java进程,然后使用

sudo killall java

该命令将终止所有Java进程。您可以将此用于流程。只需在命令末尾给出进程名

sudo killall {processName}