macos - Mac OS X如何知道哪些程序正在使用挂载的文件系统?

标签 macos osx-snow-leopard stat unmount

这听起来像是一个愚蠢的问题,但是直到最近,如果您尝试卸载正在使用的卷,Finder都会报告它正在使用,但不是由谁报告的。这是简单的Unix功能,如果在安装点上打开了文件,则不允许其弹出。但是现在他们似乎增加了一些功能,可以使用户知道当前正在使用已安装系统的程序,而且我一直在浏览fopen,stat等手册页,以查看Unix之类的操作系统(Linux发行版),并且似乎找不到类似的功能。

此功能是否专用,或者我只是在错误的位置查看?

最佳答案

有BSD级别的调用(主要是lsof,其源位于http://www.opensource.apple.com/source/lsof/),使您可以检查在进程中打开的文件列表。例如,事件监视器使用它们。

使用lsof作为起点,您可以遍历各个进程,并查看它们中是否有任何一个正在使用您正在检查的挂载点下的文件。不过,也许有更有效的方法可以做到,但我不知道。 :)

关于macos - Mac OS X如何知道哪些程序正在使用挂载的文件系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8030961/

相关文章:

linux -/etc/lsb-release : No such file or directory

c - 在对共享库进行单元测试时,如何用模拟实现替换函数?

objective-c - 针对 Mac OS 10.6 构建会导致错误 "In [..]/libZonicKRM.a, missing required architecture x86_64 in file"

c++ - 附加到字符串不会更改字符串值

macos - "config"脚本存在于系统或 Homebrew 目录之外

python - 在 mac 中使用 python 为 safari 浏览器设置 selenium

java - 使用 java.io.file 在 Mac 中访问文件

c - stat() 不适用于大文件名

linux - 如何计算文件在linux上执行的次数