如何在 OSX 中查找给定端口上运行的进程

如何在 OSX 中查找给定端口上运行的进程

我想在本地 OSX Lion 机器上运行 Web 应用程序。当我转到http://本地主机:8080已有一个进程正在运行,因此我收到以下消息:

Status Code: 404

Exception: Request URL / not found.<br><br>
Stacktrace:

Generated by Winstone Servlet Engine v0.9.10 at Wed Nov 30 13:01:15 CET 2011

我如何在 OSX 下找到在此端口上运行的进程。我发现几个在 Linux 上执行相同操作的条目,但它们似乎在 OSX 上不起作用。

多谢。


更新 1:我运行该命令lsof -i -P | grep 8080得到以下输出

WebProces 174 petersmith   20u  IPv6 0xffffff80147e6cc0      0t0  TCP localhost:50059->localhost:8080 (ESTABLISHED)

但这并没有告诉我哪个进程负责创建我在访问 URL 时在浏览器中获得的 html 输出

更新 2:我应该提到我想安装詹金斯持续集成在我的计算机上已经有一个安装,但它似乎在我的计算机上有问题。

答案1

非常笼统地说:

sudo lsof -i -P

… 将列出在特定端口上运行的所有进程。请参阅这个答案更多细节。


在您的特殊情况下,Jenkins 已在运行。此 Stack Overflow 问题包含更多信息:无法在 Mac 上运行 Jenkins.解决方案似乎是:

sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist

…这也与类似的 Stack Overflow 问题相关:如何停止在 Mac Snow Leopard 上安装 Jenkins?

相关内容