Board logo

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

作者: 麻雀    时间: 2012-10-23 17:47     标题: BAT如何删除指定文件夹内所有子文件夹和子文件而不删除指定文件夹本身?

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

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

谢谢!
作者: apang    时间: 2012-10-23 18:15

  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. )
复制代码

作者: 539956485    时间: 2012-10-23 19:47

  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
复制代码

作者: wc726842270    时间: 2012-10-24 05:53

其实我倒是想能不能用MOVE移到回收站里,如果有哪位仁兄成功了,别望了共享一下代码啊,我就不了
作者: 麻雀    时间: 2012-10-24 17:24

Thank you!




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2