一尘不染

查找进程linux(C代码)的打开文件描述符?

linux

我想找到在Linux中为某个进程打开的所有fds。

我可以使用glib库函数吗?


阅读 396

收藏
2020-06-03

共1个答案

一尘不染

由于您使用的是Linux,因此(几乎可以肯定)已/proc挂载了文件系统。这意味着最简单的方法是获取清单的内容/proc/self/fd;
其中的每个文件都以FD命名。(当然,请使用g_dir_openg_dir_read_nameg_dir_close列出信息。)

否则获取信息会有些尴尬(例如,没有有用的POSIX API;这是一个尚未标准化的领域)。

2020-06-03