获取打开文件描述符的内存使用情况

Get memory usage of open file descriptors

我知道如何使用 - lsof | wc -l 或特定 PID 或用户查找当前打开的文件数。

是否可以列出相应的 PID 以及它们使用了多少文件描述符和内存?

希望我说清楚了。提前致谢。

来自man ps

rss   resident set size
size      memory size in kilobytes

只需调用ps ax -o pid,rss,size即可获取具有驻留大小和内存大小的进程。至于文件描述符,我们可以计算每个进程在 /proc/<PID>/fd/* 目录中的文件数:

ps -A -opid | sudo xargs -n1 -I{} /bin/bash -c 'echo {} $(ls /proc/{}/fd | wc -l);'