是否有具有 Windows 命令行功能的 Mac 等效工具/shell 命令(最好与操作系统集成)netstat -b -n
?(显示活动网络连接,以及创建它们的应用程序和源/目标 IP + 端口)
答案1
OS X 有一个netstat
命令,但它不显示与网络连接相关的程序的信息。如果你想看到这些信息,你需要使用lsof
。请注意,它必须以 root 身份运行(即使用sudo
)才能查看其他用户的程序:
sudo lsof -i
lsof
还有很多控制显示内容的选项:
sudo lsof -i tcp -nP # show TCP unly (no UDP), and don't translate IP addrs and ports numbers to names
sudo lsof -i 6tcp -stcp:listen # show only IPv6 TCP ports in the listen state
sudo lsof -i @10.11.12.13 # show only connections to/from 10.11.12.13
...更多内容请参阅手册页。
答案2
lsof 列出打开的文件,因此如果某个进程处于 last-ack 状态,则不会列出它们
netstat 不会在 osx 上提供 pid
实用程序没有按建议工作
所以没有答案正确
据我所知,没有办法在 Mac 上复制 cports 的功能
其他所有答案都是误导性的
答案3
尝试一下nettop
。它确实实现了您所要求的功能。http://osxdaily.com/2013/06/07/watch-network-traffic-mac-os-x-nettop/
答案4
正如已经指出的,netstat 也可在 Mac OS X 上用作命令行工具。
如果您更喜欢与操作系统集成的 GUI 工具,那么您可以使用位于此处的网络实用程序:/Applications/Utilities/Network\ Utility.app
除了 netstat 之外,它还允许轻松访问其他网络实用程序。有关网络实用程序的良好概述,请参阅文章“如何使用网络实用程序”。