Board logo

标题: 写一个专门删除末尾带点的顽固文件夹且可运行在xp和win7系统上的批处理 [打印本页]

作者: 悬崖之树    时间: 2013-6-4 20:28     标题: 写一个专门删除末尾带点的顽固文件夹且可运行在xp和win7系统上的批处理

要求;
1 可删除xp和win7上的末尾带点的顽固文件夹。(注意,用命令 md qdj...\ 就可以建立一个带点的顽固文件夹,但是该文件夹在xp和win7下显示名称是不一样的。)
2 自动识别需要删除的文件夹,如果选择删除的不是带点的文件夹,就提示。
3 使用方法: 将要删除的文件夹(可以是多个,可以是符合和不符合要求的多个文件夹混合)拖到批处理文件上,批处理自动识别,然后给出每个文件夹操作结果的回显。
4 要删除的顽固文件夹下也可有顽固文件夹,需要把它们一起删除。
作者: 悬崖之树    时间: 2013-6-5 17:59

没人回答,我就公布答案了。
  1. @echo off&setlocal enabledelayedexpansion
  2. :loop
  3. set n=1
  4. if "%~1" neq "" (
  5.    set "name=%~1"
  6.    if !name:~-1! equ . (
  7.       set folder=%~1.\
  8.       rd /s /q !folder! 2>nul && set n=0
  9.       set folder=%~1\
  10.       rd /s /q !folder! 2>nul && set n=0
  11.       if !n!==0 (
  12.          echo %~1删除成功!
  13.       ) else (
  14.          echo %~1删除失败!
  15.       )
  16.    ) else (
  17.       echo %~1文件或文件夹不合法!
  18.    )
  19. ) else (
  20.    goto bye
  21. )
  22. shift
  23. goto loop
  24. :bye
  25. echo 全部操作已完成,谢谢使用!!
  26. pause>nul
复制代码

作者: CrLf    时间: 2013-6-6 02:27

友情提示:%~1最好还是加上引号,以免...
有空格还算好的,要是文件名里有个&,哼哼哼
作者: Python    时间: 2013-6-6 08:38

到批处理文件上

所有的拖,都是坑。




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