计算 linux 系统上有多少个进程持有一个文件

Count how many processes hold a file on a linux system

我很想知道有多少进程或任何其他实体拥有系统上的特定文件。 我试图找到一种使用 lsof 的方法(出于有效性原因,我不想汇总所有持有人),但在手册页中找不到任何内容。

请注意,我不是指的是 inode link 计数,它正在计算 fs 上此特定文件的硬 link 计数。

编辑: 我现在知道可以使用 fuser(在下面的一个答案中提到)来获取此信息,但是 fuser 使用 procfs,因此它不是很高效的。有谁知道其他不迭代 procfs 的工具吗?

谢谢。

尝试使用以下命令

fuser filename

你也可以试试

lslocks