在Mac上查找(并终止)进程锁定端口3000

我如何找到侦听/使用我的tcp端口的进程? 我在Mac OS X上。

有时,在崩溃或一些错误后,我的导轨应用程序锁定端口3000.我找不到它使用ps -ef ...我怎么找到愚蠢的东西,并残酷地杀了它...?

当做

rails server

我明白了

已经在使用的地址 - bind(2)(Errno :: EADDRINUSE)

2014年更新:

要完成下面的一些答案:执行kill命令后,删除pid文件可能是必需的rm ~/mypath/myrailsapp/tmp/pids/server.pid


  • 你可以试试netstat

    netstat -vanp tcp | grep 3000
    
  • 对于OSX El Capitan和更新版本(或者如果您的netstat不支持-p ),请使用lsof

    sudo lsof -i tcp:3000 
    

  • 找:

    [sudo] lsof -i :3000
    

    杀:

    kill -9 <PID>
    

    上面没有什么能为我工作。 任何有我经验的人都可以尝试以下方法(为我工作):

    跑:

    lsof -i :3000 (where 3000 is your current port in use)
    

    然后检查报告的PID的状态:

    ps ax | grep <PID>
    

    最后,“与它同行”:

    kill -QUIT <PID>
    
    链接地址: http://www.djcxy.com/p/38837.html

    上一篇: Find (and kill) process locking port 3000 on Mac

    下一篇: Find window with specific text for a Process