Board logo

标题: [文件操作] 【已解决】批处理怎样判断如果是文件夹,则删除? [打印本页]

作者: sophiawang    时间: 2015-7-27 15:12     标题: 【已解决】批处理怎样判断如果是文件夹,则删除?

本帖最后由 sophiawang 于 2015-7-30 10:36 编辑

菜鸟提问

在指定路径下,有文件,也有文件夹,如果是文件夹就将其删除

如果判断  if exist 好像文件和文件夹都可以判断
作者: aa77dd@163.com    时间: 2015-7-27 16:03

回复 1# sophiawang
  1. for /f "delims=" %%a in ('dir /ad /b') do @echo del /s /f /q "%%a"
复制代码

作者: aa77dd@163.com    时间: 2015-7-27 16:04

回复 1# sophiawang


if exist "目录名\"
作者: 林小七    时间: 2015-7-28 14:11

给你我以前写的东西的一个片段.....
希望对你有帮助
  1. if not defined "%files%" set /p files="请拽入要处理的目录 6退出:"
  2. if "%files%" equ "6" exit
  3. if not exist "%files%" @call %sevens% A 文件路径不存在,任意键继续&&pause>nul&&goto main
  4. for %%a in ("%files%") do set "b=%%~aa"
  5. if defined b (if %b:~0,1% neq d (@echo 拽入的不是目录,任意键继续&&pause>nul&&goto main ))
复制代码

作者: CrLf    时间: 2015-7-28 15:29

直接 rd 就行了,rd 命令不会删除文件
作者: Batcher    时间: 2015-7-28 17:00

回复 4# 林小七


    可以考虑用3楼的方法改改你以前写的代码
作者: 林小七    时间: 2015-7-29 10:43

回复 6# Batcher


    3楼的确是好办法。。。
管理大大见笑了,嘿嘿

我的这段代码出自此处 http://www.bathome.net/thread-36676-1-1.html
作者: sophiawang    时间: 2015-7-30 10:36

回复 7# 林小七


    非常感谢大家,在大家的意见下,我用了如下语句可以成功删除指定目录下的文件

cd %CurPath%\tmp\!ProductName!\
if not exist !ProductID! for /f "delims=" %%i in ('dir /ad /b') do RD /S /Q "%%i"




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