我需要一种递归删除文件夹及其子文件夹的方法。
是否有一个预先构建的工具,或者我需要编写一个?
DEL /S不删除目录。
DELTREE已从Windows 2000+中删除
我需要一种递归删除文件夹及其子文件夹的方法。
是否有一个预先构建的工具,或者我需要编写一个?
DEL /S不删除目录。
DELTREE已从Windows 2000+中删除
当前回答
以下是对我有效的方法:
试着减小路径的长度。 即:将导致这样一个文件的所有文件夹重命名为尽可能小的名称。说出一个字母的名字。继续在文件夹层次结构中向上重命名。 这样u有效地缩短了路径长度。 现在试着直接删除文件。
其他回答
要删除一个目录(不管它是否存在),请使用以下命令:
if exist myfolder ( rmdir /s/q myfolder )
管理:
takeown /r /f folder
cacls folder /c /G "ADMINNAME":F /T
rmdir /s folder
适用于包括sys文件在内的任何文件
编辑:我实际上找到了最好的方法,这也解决了文件路径过长的问题:
mkdir \empty
robocopy /mir \empty folder
进入该路径并触发该命令。
rd /s /q "FOLDER_NAME"
/s:删除指定目录和所有子目录,包括任何文件。使用/s移除树。
/q:以quiet模式运行rmdir。删除目录时不需要确认。
/ ?:在命令提示符下显示帮助信息。
在powershell中,rm -递归-force工作得很好。
以下是你需要做的事情……
用下面的代码行创建一个批处理文件
Rmdir / s %1
将批处理文件保存为Remove.bat,并将其放在C:\windows中
创建以下注册表项
HKEY_CLASSES_ROOT\目录\shell\删除目录
启动regedit并更新默认值HKEY_CLASSES_ROOT\Directory\shell\Remove Directory (RMDIR)\default 使用以下值
“c: \ windows \ REMOVE.bat”“% 1”
这就是它!现在您可以右键单击任何目录并使用RMDIR函数