我需要一种递归删除文件夹及其子文件夹的方法。

是否有一个预先构建的工具,或者我需要编写一个?

DEL /S不删除目录。

DELTREE已从Windows 2000+中删除


当前回答

进入该路径并触发该命令。

rd /s /q "FOLDER_NAME"

/s:删除指定目录和所有子目录,包括任何文件。使用/s移除树。

/q:以quiet模式运行rmdir。删除目录时不需要确认。

/ ?:在命令提示符下显示帮助信息。

其他回答

试试这个命令:

del /s foldername

如果你使用的是旧版本的windows,还有deltree。

你可以从这里了解更多: SS64: DELTREE -删除所有子文件夹和文件。

以下是对我有效的方法:

试着减小路径的长度。 即:将导致这样一个文件的所有文件夹重命名为尽可能小的名称。说出一个字母的名字。继续在文件夹层次结构中向上重命名。 这样u有效地缩短了路径长度。 现在试着直接删除文件。

以下是你需要做的事情……

用下面的代码行创建一个批处理文件

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函数

使用Powershell 5.1

 get-childitem *logs* -path .\ -directory -recurse | remove-item -confirm:$false -recurse -force

替换为需要删除的目录名。

Get-childitem从当前路径(.)中递归地搜索具有该名称的子目录。

Remove-item删除结果。