我需要一种递归删除文件夹及其子文件夹的方法。
是否有一个预先构建的工具,或者我需要编写一个?
DEL /S不删除目录。
DELTREE已从Windows 2000+中删除
我需要一种递归删除文件夹及其子文件夹的方法。
是否有一个预先构建的工具,或者我需要编写一个?
DEL /S不删除目录。
DELTREE已从Windows 2000+中删除
当前回答
使用风险自负。“按现状”提供的信息。没有经过广泛的测试。
右键单击Windows图标(通常是左下角)>单击“Windows PowerShell(管理员)”>使用这个命令(如果你不小心,你可以很容易地删除你所有的文件):
rd -r -include *.* -force somedir
其中somedir是要删除的非空目录。
请注意,对于外部连接的磁盘,或有问题的磁盘,Windows有时会表现得很奇怪——它在删除(或任何复制尝试)时不会出错,但目录没有按照指示删除(或复制)。(我发现在这种情况下,至少对我来说,@n_y在他的回答中给出的命令会产生类似“get-childitem:文件或目录已损坏且不可读”这样的错误。'作为PowerShell的结果)
其他回答
通过Powershell
Remove-Item -Recurse -Force "TestDirectory"
通过命令提示符
https://stackoverflow.com/a/35731786/439130
使用Powershell 5.1
get-childitem *logs* -path .\ -directory -recurse | remove-item -confirm:$false -recurse -force
替换为需要删除的目录名。
Get-childitem从当前路径(.)中递归地搜索具有该名称的子目录。
Remove-item删除结果。
rm -r -fo <path>
是在Windows PowerShell中最接近的。它是的缩写
Remove-Item -Recurse -Force -Path <path>
(更多细节)。
Rmdir /s dirname
RMDIR或RD如果你使用经典的命令提示符(cmd.exe):
rd /s /q "path"
RMDIR [/S] [/Q] [drive:]路径 RD [/S] [/Q] [drive:]路径 /S除目录本身外,删除指定目录下的所有目录和文件。删除目录树。 /Q安静模式,不询问是否ok删除目录树与/S
如果你正在使用PowerShell,你可以使用Remove-Item(别名为del, erase, rd, ri, rm和rmdir),并带一个-Recurse参数,可以缩短为-r
rd -r "path"