当您尝试清空 OS X 中的垃圾箱,并且应用程序中仍有打开的文件时,您会收到以下对话框:
由于项目“…”正在使用中,因此无法完成该操作。
我如何才能知道哪个应用程序或者哪个过程仍使用该文件吗?
答案1
用于lsof
查找使文件保持打开状态的原因
打开终端应用程序并使用以下命令进入垃圾箱:
cd ~/.Trash
现在,输入以下命令:
lsof name-of-file
例如,在上面的屏幕截图中,它将是:(lsof pdf\ 08-53-59.pdf
此处务必转义空格)。您也可以lsof
在后面输入一个空格,然后将文件从 Finder 的废纸篓拖到终端窗口中。
该命令将输出类似以下内容:
charon:.Trash werner$ lsof pdf\ 08-53-39.pdf
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Finder 5022 werner txt REG 14,2 636141715 32494023 pdf 08-53-39.pdf
在这种情况下,我们知道 Finder 会保持文件打开。对于任何其他应用程序,只需激活并退出它就很容易了。对于 Finder,没有明显的“退出”按钮。
要终止 Finder 并释放文档,只需在终端中输入以下内容:
killall Finder
您现在就可以清空垃圾箱了。
其他技巧
如果上述方法不起作用,您可以尝试以下一些非常基本的技巧来清空垃圾箱:
- 退出您的用户并重新登录
- 重启Mac,重新登录
答案2
lsof
即使使用 sudo 也没有返回任何内容。但简单rm
操作就成功了。
cd ~/.Trash
就我而言,它是应用程序,因此:
rm -rf some.app