3个不稳定版本
0.2.1 | 2024年7月12日 |
---|---|
0.2.0 | 2024年3月27日 |
0.1.0 | 2024年3月14日 |
#443 in 网络编程
8,396 每月下载量
用于 pik
46KB
1K SLoC
Listeners
一种Rust库,可跨平台方式获取监听TCP端口的进程。
动机
尽管已经存在一些Rust库可以获取进程信息,但它们都没有满足以跨平台方式获取TCP监听器进程ID和名称的需求。
现有库的一些示例
这个库旨在填补这个空白,并旨在成为
- 跨平台:它目前支持Windows、Linux和macOS
- 高效:它内部使用低级系统API
- 简单:它公开直观的API以获取监听进程的详细信息
- 轻量级:它只有严格必要的依赖项
路线图
- Windows
- Linux
- macOS
- BSD
- iOS
- Android
用法
将此添加到您的 Cargo.toml
[dependencies]
listeners = "0.2"
获取所有监听进程
if let Ok(listeners) = listeners::get_all() {
for l in listeners {
println!("{l}");
}
}
输出
PID: 1088 Process name: rustrover Socket: [::7f00:1]:63342
PID: 609 Process name: Microsoft SharePoint Socket: [::1]:42050
PID: 160 Process name: mysqld Socket: [::]:33060
PID: 160 Process name: mysqld Socket: [::]:3306
PID: 460 Process name: rapportd Socket: 0.0.0.0:50928
PID: 460 Process name: rapportd Socket: [::]:50928
有关用法示例的更多示例,包括如何更细致地获取监听进程,请参阅examples
文件夹。
依赖项
~0–39MB
~605K SLoC