📌  相关文章
📜  mac 查看端口上运行的内容 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:02:49.737000             🧑  作者: Mango

在Mac上查看端口上运行的内容

在Mac上查看特定端口上正在运行的内容是很常见的需求,特别是在开发和调试过程中。本文将介绍如何在Mac上使用命令行查看端口上正在运行的内容,同时提供一些细节和实用技巧。

第一步:确定端口号

首先,需要确定要查看的端口号。可以在代码中指定端口号,也可以查看已经在运行的程序中使用的端口号。

第二步:查找使用端口的进程ID

使用以下命令可以查找使用指定端口的进程ID:

lsof -nP -iTCP:<port> -sTCP:LISTEN

其中,<port>为要查看的端口号。执行命令后,可以看到以下信息:

COMMAND   PID  USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
program  1234  user   12u  IPv4 0x0123456789012345      0t0  TCP *:<port> (LISTEN)

其中,COMMAND字段列出了正在使用指定端口的进程的名称,PID字段列出了该进程的ID。

第三步:查看运行中的内容

有了进程ID之后,可以使用以下命令查看进程正在运行的内容:

sudo lsof -nP -p <pid> | grep LISTEN

其中,<pid>为查找到的进程ID。此命令将显示正在运行的进程的详细信息,包括所有打开的文件和端口。通过grep LISTEN过滤出正在侦听的端口,可以看到以下信息:

program  1234 user   12u  IPv4 0x0123456789012345      0t0  TCP *:<port> (LISTEN)

其中,<port>为要查看的端口号。可以根据需要修改grep命令中的过滤条件以获取所需结果。

实用技巧

在查看端口上的内容时,有些细节和技巧是非常实用的:

  • 运行命令时需要使用sudo以获取足够的权限,否则可能无法访问某些进程和文件。
  • 如果要查看多个正在运行的进程,可以使用循环和过滤条件以查找所有符合要求的进程。
  • 如果遇到网络问题,例如端口被占用或无法访问特定地址,则可以使用网络诊断工具来查找并解决问题。
  • 在开发过程中,更好的方法是编写代码以将输出直接发送到终端或日志文件中,而不是手动查看运行中的内容。
结论

在Mac上通过命令行查看端口上正在运行的内容是一项非常实用的技能,尤其是在开发和调试过程中。通过以上步骤和技巧,你可以更快地找到和解决问题,从而提高开发效率和代码质量。