在我们的一台 Windows 2003 文件服务器上,某人或某物设法在某些用户的主文件夹中创建了无限重复的目录树,并且无法删除它们。
你会得到这样的结果:
D:\Student\2012\user.name\servername\student\2012\user.name\servername\student\2012\...
Run Code Online (Sandbox Code Playgroud)
据我所知,它无限地继续下去。
尝试从它所在的系统中删除目录树会导致“删除文件或文件夹时出错:无法删除文件:”。尝试从连接到网络共享的 Windows 7 系统中删除它会导致“文件夹正在使用”错误。
如果您一直向下浏览目录树,您最终会到达一个无法打开或删除的目录(如果右键单击,则不会出现任何标准选项),但是如果您尝试从另一个系统上的共享打开同一目录它可以打开,但是 Windows 资源管理器变得非常慢。
我已经尝试了这篇文章中的建议,以及使用 Linux 光盘启动服务器并尝试 rm -rf 目录,都没有奏效。
这是一个谜。
编辑:我可能还补充说,可以重命名目录,而不是删除它们。
小智 18
我还有一个由 java IDE 创建的无限递归文件夹,我无法在 Windows 资源管理器或 cmd 提示符下删除它。
但是,当我安装 git 时,我也安装了 git-bash。在 git-bash 中,您可以发出以下命令:
rm -rfd recursive_folder_name
Run Code Online (Sandbox Code Playgroud)
它会照顾它。
在该文件夹中工作的任何人都可能设法创建一个从 到 循环的连接点user.name,servername从而创建一个“无限循环”目录树。
连接是 NTFS 文件系统的一项功能,可让您创建指向目录的符号链接,并作为该目录的别名运行。 http://en.wikipedia.org/wiki/NTFS_junction_point
您可以在 wiki 页面的“观察到的效果”部分下看到您所描述的问题。
尝试运行此实用程序以列出该服务器下的联结:
http://technet.microsoft.com/en-us/sysinternals/bb896768
它还应该使您能够删除连接点。