使用 bash 删除所有 Mac 生成的文件“._”

使用 bash 删除所有 Mac 生成的文件“._”

我正在尝试查找命令以递归方式从驱动器中删除所有 Apple Mac 生成的文件(例如“._”)。到目前为止,我已经:

find . -name '._*' -exec rm -rf {} \;

但它似乎没有起到作用。

答案1

现在有更好的方法!

man dot_clean从 OS X 10.5 开始请参阅。

dot_clean -n .不仅会删除当前目录中及下方的点下划线文件,还会将它们的信息合并到父文件中(如果父文件尚不存在的话)(并且我推断-n如果没有匹配的本机文件,您还需要删除点下划线文件)。

答案2

使用点作为第一个参数从您当前所在的目录开始。

如果你想找到全部以 ._ 开头的文件,您应该使用斜杠作为第一个参数,以便查找从根目录开始。

由于其中一些文件不属于您,因此您可能还想使用 suso 命令。

完整的命令如下所示:

sudo find / -name "._*" -exec rm -rf {} \;

至少对我来说,这总是有效的。省略 -exec 部分将仅列出所有文件,因此您可以先运行此命令,以查看是否找到了您期望的所有文件

答案3

我知道:这篇文章已经过时了。无论如何,我在这里写这篇文章,因为这是我找到的第一篇!我在 mac osx 上使用的 Dropbox 帐户也遇到了同样的问题,现在已移至 Windows / Linux Ubuntu。使用 bash(我的是 Cygwin64 bash),我在 Dropbox 文件夹中输入:

find . -regex '.+/\._.+' -exec rm {} \;

请注意,上述解决方案中已删除 -rf。'._' 应该只是文件,所以不要给 rm 命令添加太多权限!;)

答案4

首先从当前文件夹中找到具有类型和名称模式的文件,然后执行命令将其删除:

find ./ -type f -name "._*" -exec rm -r {} \;

我有同样的问题。这对我有用

相关内容