删除文件夹中的子目录但保留单个文件

删除文件夹中的子目录但保留单个文件

我正在尝试创建自己的批处理文件来删除文件夹的子目录,但保留文件和顶层。我知道我可以这样做,RMDIR <folderName> /S /Q但如果可以避免的话,我真的不想对每个文件夹都这样做。

有没有一种简单的方法可以删除目录中的所有文件夹但保留顶层文件?谢谢

答案1

执行此操作的命令是:

FORFILES /C "cmd /c if @isdir==TRUE echo rmdir @file /s /q"

如果输出看起来正确,删除单词 echo。命令变为:

FORFILES /C "cmd /c if @isdir==TRUE rmdir @file /s /q"

请注意,第二条命令是不可逆的。如果输入错误,您将丢失数据。因此,在继续执行第二条命令之前,请仔细检查第一条命令。如有疑问,请进行备份。

答案2

for /d %i in (*)do rmdir /q /s .\"%~i"\.

避免使用forfileswith cmd /c,请遵循ss64.com建议,改用for /D循环:



  • 进一步阅读:

[√]For 循环

[√]For/D 循环

[√]For/R 循环

[√]研发 | RMDir /?

相关内容