如何删除无法删除的文件和文件夹?

gle*_*roo 29 ntfs windows-xp

我有一个以前的 WindowsDocuments and Settings文件夹的备份副本,该文件夹仅包含我的原始用户和另外 2 个目录:FavoritesLocal Settings.

当我尝试删除时,出现Local Settings此错误:

替代文字

当我尝试删除时Favorites,出现此错误:

替代文字

我在cmd shell 中运行了这个:

属性 *.* -r -a -s -h /s

...但它没有帮助,也没有返回任何错误/警告。

我在多个级别反复使用Unlocker v1.8.5LockHunter查看是否有任何文件正在使用中,但两者总是说:No Files Locked

更新 #1:

我能够重命名目录,现在在(尝试)删除之前给了我这个警告:

替代文字

如果我按Yes(或Yes to All),则会收到此错误:

替代文字

更新#2:

我让chkdsk /f运行它需要重新启动,因为它在我的主系统分区上。在第 2 阶段扫描期间,我收到了大约 40 个这样的:

从文件 25 的索引 $0 中删除索引条目。

...其次是:

删除文件 37576 的索引 $I30 中的索引条目 cookie。

...但我在尝试删除时仍然收到上面的第一个错误对话框。

我又跑CHKDSK,这一次:chkdsk /f /r。没有产生任何消息。删除时结果相同。

更新 #3:

深入挖掘,这99是位于此处深处的众多目录之一的名称:

C:\Documents and Settings.OLD\User\Local Settings\Application Data\Microsoft\Messenger\address@hotmail.com\SharingMetadata\user@hotmail.com\DFSR\Staging\CS{D4E4AE55-B5E2-F03B-5189-6C4DA6E41788 }\

在每个目录中都有名称如下的文件:

2300-{C93D01AC-0739-4FD9-88C7-13D2F21A208E}-v2300-{C93D01AC-0739-4FD9-88C7-13D2F21A208E}-v2300-已下载。

我注意到,与所有目录不同,我无法重命名这些文件中的任何一个。我还注意到文件 + 目录名称非常长:

原始目录 = 194 个字符
文件名 = 100+ 个字符
长度超过了 255 个字符的限制,这是错误的,可以解释我在更新 #1 中发布的错误消息。

部分解决方案:

重命名所有目录,直到总路径长度小于 100。之后我能够重命名.frx文件,更不用说删除Local Settings目录中的所有内容了。

这只是部分解决方案,因为这些(空)目录仍然不可删除,

C:\1\2\Favorites\Wien\What To Do..
C:\1\2\Favorites\Photography\FIRE

与上面相同的错误:

替代文字

以下是两个文件夹的资源管理器属性显示:

替代文字

更新 #4(另一个部分解决方案):

使用harrymc的答案并仔细阅读这篇令人惊叹的 MS-KB 文章,该文章包含几乎每个人的想法,然后还有一些不显眼的标题:您不能删除 NTFS 文件系统卷上的文件或文件夹

我能够删除第二个文件夹C:\1\2\Favorites\Photography\FIRE- 问题是最后有一个不可见的尾随空格。当我在玩del "\\?\<path>"他建议的命令的同时进行自动完成时,我很幸运。

注意:正常del不起作用,也没有从explorer.

现在剩下的就是第一个目录C:\1\2\Favorites\Wien\What To Do..(是的,我无休止地尝试了上述解决方案的多种组合;)

Tam*_*man 29

del用于删除文件,rd aka rmdir用于删除文件夹,所以...

rd /s "\\?\C:\1\2\Favorites\Wien\What To Do.."
Run Code Online (Sandbox Code Playgroud)

...应该做的工作!:-)

/s参数

除目录本身外,还删除指定目录中的所有目录和文件。
用于删除目录树。


如果这不起作用; 即使没有通配符/自动完成;那么你就有腐败问题。


Jef*_* F. 6

您很可能有 FS(文件系统)损坏。运行chkdsk,然后尝试删除文件。

还要确保目录中没有使用警告提示的内容。

我还建议您在做任何事情之前备份您的重要文件。


bya*_*hna 6

我会按照杰夫的建议先尝试运行 chkdsk。如果这不起作用,您可以使用 linux live cd 启动,安装硬盘驱动器并从 linux live 环境中删除文件夹。


Joe*_*orn 5

尝试删除时,我仍然收到上面的错误 99 对话框。

99 不是错误编号 - 它是您要删除的文件夹中的文件或文件夹的名称。寻找这个项目。

一旦你找到它,它只是在抱怨权限错误。这可能是因为用户的配置文件文件夹中的某些内容设置为仅对该用户具有权限而其他人没有权限,并且设置为不从其父级继承权限,或者由于某些其他原因丢失了对该文件的所有权限。结果是您计算机上的任何用户帐户都无法对文件或文件夹执行任何操作。

要解决此问题,请右键单击该文件(或它包含的文件夹以确保您获得所有内容),Properties从上下文菜单中选择,然后选择Security打开的对话框中的选项卡。此屏幕将有一个Advanced您应该单击的按钮。Owner在打开的对话框上查找选项卡。您现在应该能够使用此窗口获取所有权,这将为项目分配新的权限条目,并最终允许您删除它。


小智 5

在微软的支持网站上阅读以下内容:

1) 用于dir /x获取列出的文件/文件夹的短名称(8.3 表示法) 2) 用于rmdir /s shortname删除长名称非标准的文件夹