[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] BAT如何删除指定文件夹内所有子文件夹和子文件而不删除指定文件夹本身?

例如,test文件夹内有很多子文件和子文件夹,子文件夹内又有很多子文件和子文件夹。现在希望删除test文件夹内的所有子文件和子文件夹,但不能删除test文件夹本身,请问如何实现?
del /s只会删除所有子文件,但不会删除子文件夹;rd /s会删除所有子文件和子文件夹,但test本身也一起删掉了。

注:我不希望通过rd /s连同test一起全部删掉后再md重新创建一个test,因为我在test上做了很多共享和权限设置。

谢谢!

  1. @echo off
  2. pushd "D:\test\"
  3. for /f "delims=" %%a in ('dir /b *.*') do (
  4.   if exist "%%a\" (rd /s /q "%%a") else del /f /q "%%a"
  5. )
复制代码

TOP

  1. @echo off
  2. cd/d d:\test
  3. for /f "delims=" %%i in ('dir/d/b') do (rd /s /q "%%i" 2>nul)
  4. for /f "delims=" %%j in ('dir/-d/b') do (del /f /q "%%j" 2 >nul)
  5. pause
复制代码
无所谓而无所为 无所谓而无所不为

TOP

其实我倒是想能不能用MOVE移到回收站里,如果有哪位仁兄成功了,别望了共享一下代码啊,我就不了
枫中残雪:风停了,我的心却在动,让我心中的寒意走向远方

TOP

Thank you!

TOP

返回列表