在特定的港口杀死一个进程

我正在使用expressJS并设置了服务器并永久使用选项

我正试图杀死一个我开始使用的进程

forever start app.js 

我正在使用端口7006

我已经使用 ::

  • fuser -k 7006/tcp
  • netstat -plten |grep 7006 …..然后我用kill -9 7392

另外我用sudo ssh myip fuser -k 7006/tcp我得到答复作为公钥

我仍然无法杀死在特定端口运行的进程(7006)

尝试:

 $ forever stopAll 

kill进程不一定会工作,因为forever将保持在你身上:)

心连心,
亚伦

使用像Forever这样的服务的重点在于如果以任何方式重新启动应用程序。 它将自动重新启动同一进程的应用程序,即使你杀死了7006上运行的进程。

你必须杀死永远的进程,而不是在7006上运行的进程。

 ps -ef | grep forever 

你会得到下面的输出..

 harry@joker:~/git/mean|master ⇒ ps -ef |grep forever 501 4259 1 0 12:57AM ?? 0:00.27 /usr/local/bin/node /usr/local/lib/node_modules/forever/bin/monitor server.js 501 4327 3327 0 12:58AM ttys000 0:00.00 grep forever harry@joker:~/git/mean|master ⇒ 

用pid 4259杀死进程

要清除所有看到下面的输出..

 harry@joker:~/git/mean|master ⇒ ps -ef | grep 4259 501 4259 1 0 12:57AM ?? 0:00.27 /usr/local/bin/node /usr/local/lib/node_modules/forever/bin/monitor server.js 501 4260 4259 0 12:57AM ?? 0:00.71 /usr/local/bin/node /Users/harry/git/mean/server.js 501 4342 3327 0 1:02AM ttys000 0:00.00 grep 4259 harry@joker:~/git/mean|master ⇒ 

注意4260的父进程,它的4259(这意味着永远分叉另一个进程来运行节点server.js)

希望这可以帮助!