我需要一种递归删除文件夹及其子项的方法.
是否有预制的工具,或者我需要写一个?
DEL /S 不删除目录.
DELTREE 已从Windows 2000+中删除
Dun*_*art 632
如果您使用的是经典命令提示符(cmd.exe),则为RMDIR或RD:
rd /s /q "path"
Run Code Online (Sandbox Code Playgroud)
如果你正在使用PowerShell的你可以使用Remove-Item(这是化名为del,erase,rd,ri,rm和rmdir),并需要一个-Recurse可以缩短到说法-r
rd -r "path"
Run Code Online (Sandbox Code Playgroud)
wbk*_*ang 133
管理员:
takeown /r /f folder
cacls folder /c /G "ADMINNAME":F /T
rmdir /s folder
Run Code Online (Sandbox Code Playgroud)
适用于任何包括sys文件的内容
编辑:我实际上找到了最好的方法,也解决了文件路径太长的问题:
mkdir \empty
robocopy /mir \empty folder
Run Code Online (Sandbox Code Playgroud)
Jim*_*eth 111
RMDIR [/S] [/Q] [drive:]path
RD [/S] [/Q] [drive:]path
/S 除目录本身外,还删除指定目录中的所有目录和文件. 用于删除目录树.
/Q 安静模式,不要问是否可以删除目录树 /S
Sir*_*dda 19
转到路径并触发此命令.
rd /s /q "FOLDER_NAME"
Run Code Online (Sandbox Code Playgroud)
/ s:删除指定的目录和所有子目录,包括任何文件.使用/ s删除树.
/ q:以安静模式运行rmdir.删除目录而不确认.
/?:在命令提示符下显示帮助.
接受的答案很好,但假设您安装了 Node,您可以使用节点库“rimraf”更精确地执行此操作,它允许使用通配模式。如果你经常使用它(我这样做),只需全局安装它。
yarn global add rimraf
Run Code Online (Sandbox Code Playgroud)
然后,例如,我经常使用的模式:
rimraf .\**\node_modules
Run Code Online (Sandbox Code Playgroud)
或者对于让您避开全局安装的单行程序,但包动态下载所需的时间稍长:
npx rimraf .\**\node_modules
Run Code Online (Sandbox Code Playgroud)
要删除目录(无论是否存在),请使用以下命令:
if exist myfolder ( rmdir /s/q myfolder )
Run Code Online (Sandbox Code Playgroud)
通过 Powershell
Remove-Item -Recurse -Force "TestDirectory"
Run Code Online (Sandbox Code Playgroud)
通过命令提示符
rm -r -fo <path>
Run Code Online (Sandbox Code Playgroud)
是您在 Windows PowerShell 中可以获得的最接近的。它是英文缩写
Remove-Item -Recurse -Force -Path <path>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
542397 次 |
| 最近记录: |