将项目导入eclipse时,它以某种方式开始创建目录的递归版本.
现在,当我尝试删除任何内容时,我收到消息"您指定的文件名太长了".
我无法从命令shell中删除它.我无法从资源管理器中删除它.我无法做任何事情.我不知道Eclipse创建了多少个副本.在我意识到出错之前,Eclipse运行了一分钟,我取消了操作.
我可以获得顶级文件夹的属性,它说它包含497个文件夹.
问题1:如何在Windows中删除所有这些内容?
问题2:日食是怎么回事?
robocopy empty_dir base_nested_dir /purge
示例:如果您的文件夹路径太长,例如:
D:\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles\BackupFolder\Copy\MyFiles
按照这些说明删除它.
创建一个空文件夹,例如C:\Users\Name\Desktop\temp
.
打开命令提示符窗口.
类型 robocopy C:\Users\Name\Desktop\temp D:\BackupFolder /purge
注意:如果步骤3中的任一路径中都有空格,则路径必须用引号括起来.
如果您对命令行不熟悉,7Zip是最终的解决方案.
打开7Zip文件管理器
导航到您的文件
Shift - 删除您的文件
干杯!
我遇到了与Eclipse类似的问题:尝试使用Subclipse导入项目,它生成了一组深度嵌套的目录,我无法删除.
我做了几件事,首先我将目录名称编辑到尽可能最短的长度(实际上我认为这是毫无意义的).其次,我尽可能深地遍历目录树,然后剪切并粘贴分支(这使得删除原始分支成为可能),然后重复该过程.
@Charlie和@ Tomalek的解决方案看起来可能更优雅.我不打算重复这些经验来找出答案.
至于Q1)
使用subst来缩短路径:
subst Q: C:\very\long\path\created\by\eclipse Q: del *.*
至于Q2)
在其他操作系统中,长路径不是问题,并且有一些Windows API函数可以处理超过255个字符的路径,所以他们只是这样做了,我想.
如果您需要处理超过的路径MAX_PATH
,则必须使用Windows文件API的Unicode版本(例如DeleteFileW
)并使用\\?\前缀.您可以使用这些API编写一个简短的程序来枚举这些目录并删除它们.
修复很简单,免费!根本不需要重命名文件夹.
免费下载Cygwin.
使用命令rm -f -r
并等待片刻.
我有一个1.5 GB的文件夹,有很多内部文件夹,它工作!
maxaha1在此Windows Sysinternals论坛帖子中提到的方法有效。
我建议您自上而下地工作。只要您停留在相同的卷(共享)中,通常就可以将上一级目录拖动到新的父目录中,而无需考虑所拖动目录的内容(即,以及目录可能存在的长度/递归问题)。因此,您可以沿着问题路径向下查找4到5个目录,然后将其拖到根目录中。然后删除现在仅包含几个级别的原始路径。理想情况下,应将最长路径保留为少于250个字符(包括文件名)。目前,我正在进行系统迁移,我们有一些具有340多个char路径的用户,如果没有这种方法,这些路径就不会复制。我已经尝试了subst,递归网络使用,递归脚本等。不幸的是,用户似乎能够创建使最佳编码人员,管理员不知所措的东西。
创建新文件夹,然后拖放,每次从顶部向下放几个文件夹(并删除它们),直到全部清理干净为止。