Repolode
theopfr

theopfr/somo

一款更友好的 netstat 替代工具,以表格形式查看 Linux 和 macOS 上的套接字与端口。

Star
2,624
Fork
69
未关闭 Issue
5
最近提交
3天前

这是什么?

somo 是一个用于在 Linux 和 macOS 上查看网络套接字与端口的命令行工具。它以格式化表格展示当前连接,能直接看出某个端口被哪个程序或 PID 占用,无需记忆 netstat 的参数。

输出结果可以按协议、本地或远程端口、IP 地址、程序名、PID、用户以及监听或已建立等连接状态进行过滤,也可以按列排序、切换紧凑视图,或以 JSON 及自定义格式输出。交互式的 kill 模式允许你从结果中选择进程并直接终止。

在 Linux 上依赖 procfs crate,在 macOS 上使用 netstat2 和 libproc。支持 bash、zsh、fish 和 elvish 的命令补全,还可以通过配置文件保存默认参数。

核心功能

  • 01以表格展示套接字,可按协议、端口、IP、程序、PID 和用户过滤
  • 02在连接列表中交互式选择并终止进程
  • 03支持 JSON 输出和自定义格式字符串
  • 04支持按列排序、倒序显示和紧凑视图
  • 05根据 IANA 端口注册表为远程端口标注服务名
  • 06通过配置文件设置默认参数,并支持自动分页

适用场景

  • 排查提示端口被占用、无法绑定的进程
  • 调试时查看 Linux 服务器或 Mac 上正在监听的服务
  • 通过 JSON 输出将网络信息接入脚本或其他工具
  • 快速结束占用网络连接的残留进程

标签

常见问题

somo 是什么?
一款更友好的 netstat 替代工具,以表格形式查看 Linux 和 macOS 上的套接字与端口。 somo 是一个用于在 Linux 和 macOS 上查看网络套接字与端口的命令行工具。它以格式化表格展示当前连接,能直接看出某个端口被哪个程序或 PID 占用,无需记忆 netstat 的参数。
somo 可以免费使用吗?用的什么许可证?
somo 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
somo 还在维护吗?
活跃维护中。somo 最近一次提交是在 2026年10月19日。
somo 适合用来做什么?
排查提示端口被占用、无法绑定的进程 调试时查看 Linux 服务器或 Mac 上正在监听的服务 通过 JSON 输出将网络信息接入脚本或其他工具 快速结束占用网络连接的残留进程
在哪里获取 somo?
源代码和安装说明在 GitHub 上:https://github.com/theopfr/somo

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目