有没有办法检查给定名称的文件是否被某个进程(除了我们的进程)打开?
我在 FreeBSD 上需要这个。如果能支持 Linux 就好了。我用 Perl 写。
需要 root 访问权限的技术不适合。
答案1
您应该使用fstat
命令,您可以将其运行为user
:
该
fstat
实用程序识别打开的文件。如果显式打开文件,则认为该文件已被进程打开,该文件是该进程的工作目录、根目录、监狱根目录、活动可执行文本或内核跟踪文件。如果未指定选项,fstat 会报告系统中所有打开的文件。
有没有办法检查给定名称的文件是否被某个进程(除了我们的进程)打开?
我在 FreeBSD 上需要这个。如果能支持 Linux 就好了。我用 Perl 写。
需要 root 访问权限的技术不适合。
您应该使用fstat
命令,您可以将其运行为user
:
该
fstat
实用程序识别打开的文件。如果显式打开文件,则认为该文件已被进程打开,该文件是该进程的工作目录、根目录、监狱根目录、活动可执行文本或内核跟踪文件。如果未指定选项,fstat 会报告系统中所有打开的文件。