如何在Finder中修复灰色文件?


13

有什么方法可以强制Finder刷新灰色(无法访问的)文件的使用中信息?

细节:

我将不常用的文件从Mac(OS X 10.6)移到Windows Server 2008文件服务器。我最近发现了大量文件,OS X的Finder显示为灰色(就像文件正在被复制一样)。这些文件都是有效且完整的:没有损坏或丢失的数据;实际上,我可以从终端或Windows计算机访问文件而没有问题,但是Finder仍然认为应该将其视为不可访问。

我可以通过以下方式“解决”问题:将原始文件复制到新名称,删除原始文件,等待一分钟左右,然后将新文件重命名为原始名称(如果我等待的时间不够长,文件重命名为原始名称时,它将变为灰色)。

基本上,似乎Finder未能清除某些“使用中”或“未完成”标志[推测]。

因此,回到最初的问题:如何解决? 理想情况下,我希望能够扫描网络驱动器,并通过终端或递归操作查找并修复所有灰色文件,因此我可以在不浪费大量时间的情况下修复它们。


它与权限有关吗?你检查了吗?
Martin Marconcini

重新启动Finder是否可行?
Itai Ferber

没有权限:可以通过终端访问有问题的文件。重新启动OS / X无效。
罗伯特·奥特曼

Answers:


8

这为我解决了! http://macadmins.psu.edu/news/2011/06/grayed_out_finder_folder

所以发生了什么事?似乎该文件夹的创建日期在1943年被设置为一个随机日期。虽然我们不确定它是如何发生的,但我们确实想出了解决方法。

我们使用了开发人员工具,GetFileInfo和SetFile附带的一些二进制文件。GetFileInfo向我们显示了文件夹的创建日期。起初我们忽略了它,但经过仔细检查,它引起了我们的注意。

$ GetFileInfo Test /目录:“ / Users / user / Desktop / Test”属性:avbstclinmedz创建:06/13/1943 06:13:00修改:06/13/2011 15:07:33

然后,我们可以使用SetFile工具更改创建日期。

$ SetFile -d 2011年6月13日测试/

将日期重新设置为合理的时间后,我们可以看到它确实发生了变化。

$ GetFileInfo Test /目录:“ / Users / userid / Desktop / Test”属性:avbstclinmedz创建:06/13/2011 06:13:00修改:06/13/2011 15:07:33

然后,该文件夹在Finder中正确显示,并且可以再次使用。我们还发现,如果您创建了文件夹的别名,则可以看到数据并将其移出。将其移到另一个文件夹后,可以删除旧文件夹。


1
这很有道理;如果我没记错的话,我看到的是奇怪的约会。不幸的是(为了检验理论),我从那时起清除了错误,而且有一段时间没再见到这种情况了。谢谢(你的)信息!
罗伯特·奥特曼

5

使用ls -la以检查文件是否有扩展属性。看起来类似于:

-rwxr-xr-x@ 1 user1 staff 439734882 Aug 16 21:34 myfile.zip

@ 最后。那代表扩展属性。

要查看扩展属性,您需要使用xattr -l filename命令。

在许多情况下,灰色文件具有com.apple.FinderInfo属性,如下所示:

com.apple.FinderInfo:
00000000  62 72 6F 6B 4D 41 43 53 00 00 00 00 00 00 00 00  |brokMACS........|
00000010  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  |................|
00000020

要删除该属性,请运行xattr -d com.apple.FinderInfo filename,文件将恢复正常。

如果您需要从所有文件中递归删除该属性,则可以运行:

xattr -dr com.apple.FinderInfo .

不要错过最后一个点.,即当前目录。

原始帖子:https//tangentlin.wordpress.com/2013/10/18/greyed-out-files-in-mac-osx/


1
只有这一个人对我在High Sierra上起作用。
里维拉

2

我通过在灰色文件夹中使用重复命令来解决此问题。可以访问新文件夹,并且文件可以移动到另一个文件夹。移动文件后,删除两个文件夹(灰色和副本),现在都为空


1

尝试删除缓存(〜/ Library / Caches)并重新启动。我的经验是,这通常可以解决与图标相关的奇怪问题。


不幸的是,这没有效果。
罗伯特·奥特曼

1

您可以尝试使用rsync工具再次重新同步文件:

$ rsync -aut /source/* /destination

或(如果文件太多):

$ find /source/ -name \* -type f -exec rsync -at {} /destination/ ";"

这是BSD的参数rsync

-a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)
-u, --update                skip files that are newer on the receiver
-t, --times                 preserve modification times

如果您使用的是GNU rsync,请考虑添加:

-N, --crtimes               preserve create times (newness)

注意:您可以安装GNU rsyncbrew install rsync

如果这样做没有帮助,也可以尝试不使用-u


@Flimm对,我已经使用了GNU来测试它,我已经弄清了答案。已删除-N,但是如果您使用的是GNU版本,则可以添加它,否则使用BSD语法。
kenorb

使用带有-N标记的GNU rsync 对我有用。我不确定是否是由于-N标志。
Flimm

0

尤里卡!我弄清楚是什么原因引起的。

文件将通过DFS复制复制到Windows Server 2008网络共享(复制到另一台服务器)。Finder会以某种方式缓存文件的“忙”状态。在复制文件时有时会发生这种情况。

解决方法是使用终端复制文件,删除原始文件WAIT !!!,然后将复制文件重命名为原始名称。(如果您不等待,重命名的副本在重命名后会变成灰色。)

那就是“什么”;我仍然希望有人可以解释信息的缓存位置。

如果有人能弄清楚信息的缓存位置以及如何识别脚本中受影响的文件,我将接受他们的回答;否则,我会将其标记为此答案,并将问题记为OS / X和Windows互操作性怪异。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.