确定进程正在访问哪些文件

确定进程正在访问哪些文件

我如何找出特定进程访问的所有文件?

我正在使用 Ubuntu 9.04。

答案1

lsof将列出打开的文件和相关进程 ID。如果没有给出选项,它将列出所有内容。

有一个选项,-p用于列出单个进程的打开文件。因此,对于 PID 为 6714 的进程,这将列出该进程打开的文件:

    lsof -p 6714

仅列出常规文件grep可用于过滤 lsof 的输出:

    lsof -p 6714 | grep REG

如果需要比 grep 更强大,则-F可以使用该选项,但随后它会变得更加复杂。从lsof 手册页

当指定 -F 选项时,lsof 会产生适合另一个程序处理的输出 - 例如 awk 或 Perl 脚本或 C 程序。

这取决于您的要求。

相关内容