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

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

DEL /S不删除目录。

DELTREE已从Windows 2000+中删除


当前回答

作为旁注:

从linux版本用所有子dirs(递归)+强制删除

$ rm -rf ./path

到 PowerShell

PS> rm -r -fo ./path

它具有接近相同的参数(只是分开了)(需要-fo,因为-f可以匹配其他不同的参数)

注意:

Remove-Item ALIASE
    ri
    rm
    rmdir
    del
    erase
    rd

其他回答

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

rd /s /q "FOLDER_NAME"

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

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

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

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

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

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

使用风险自负。“按现状”提供的信息。没有经过广泛的测试。

右键单击Windows图标(通常是左下角)>单击“Windows PowerShell(管理员)”>使用这个命令(如果你不小心,你可以很容易地删除你所有的文件):

rd -r -include *.* -force somedir

其中somedir是要删除的非空目录。

请注意,对于外部连接的磁盘,或有问题的磁盘,Windows有时会表现得很奇怪——它在删除(或任何复制尝试)时不会出错,但目录没有按照指示删除(或复制)。(我发现在这种情况下,至少对我来说,@n_y在他的回答中给出的命令会产生类似“get-childitem:文件或目录已损坏且不可读”这样的错误。'作为PowerShell的结果)

RMDIR [/S] [/Q] [drive:]路径

RD [/S] [/Q] [drive:]路径

/S除目录本身外,删除指定目录下的所有目录和文件。删除目录树。 /Q安静模式,不询问是否ok删除目录树与/S

通过Powershell

 Remove-Item -Recurse -Force "TestDirectory"

通过命令提示符

https://stackoverflow.com/a/35731786/439130