#端口 #进程 #Linux进程 #本地文件 #系统 #网络 #信息

app usedby

一个小型实用程序,用于查看正在使用网络端口或本地文件的内容

6 个版本

0.2.0 2024年2月12日
0.1.4 2024年2月9日

#304 in Unix API

每月 33 次下载

MIT 许可证

11KB
188 代码行

一个小的Linux实用程序,用于识别监听端口或使用文件的内容,并显示相关信息。

安装:运行 cargo install usedby - 需要 Rust 的 cargo。

示例使用:该程序附带一个方便的帮助输出,显示所有选项,以下是一些示例使用方法

运行 usedby port 8080,或在仓库打开的情况下 cargo run port 8080。它将打印类似以下内容:

PID      UID      EXE                        CMD                       
120509   1000     /usr/bin/nc.openbsd        nc -v -v -l 8080          
2819     1000     /usr/bin/bash              /bin/bash                 
2575     1000     /usr/bin/konsole           /usr/bin/konsole -session 1073696c6f000165851079800000023940020_1707684371_75586
2339     1000     /usr/bin/ksmserver         /usr/bin/ksmserver        
1512     1000     /usr/lib/systemd/systemd   /lib/systemd/systemd --user
1        0        ?                          /sbin/init splash

在本例中,进程 nc(netcat)的进程 ID 为 120509,正在监听端口 8080,它是在 KDE 系统的 Konsole 中运行的 bash 终端启动的,使用 systemd。

第一行解释了列,第二行显示了正在监听端口 8080 的进程,以下行显示了每个父进程,直到没有更多父进程或用户没有足够的权限读取进程信息为止。

Usedby 还可以显示正在读取或写入文件的过程信息。例如:

$ usedby file ./test.txt
PID      UID      EXE                        CMD                       
121382   1000     /usr/bin/tail              tail -f test.txt          
2807     1000     /usr/bin/bash              /bin/bash                 
2575     1000     /usr/bin/konsole           /usr/bin/konsole -session 1073696c6f000165851079800000023940020_1707684371_75586
2339     1000     /usr/bin/ksmserver         /usr/bin/ksmserver        
1512     1000     /usr/lib/systemd/systemd   /lib/systemd/systemd --user
1        0        ?                          /sbin/init splash

依赖关系

~4–13MB
~156K SLoC