Board logo

标题: [文件操作] 【已解决】如何删除bat文件所在的文件夹 [打印本页]

作者: tangqingfu    时间: 2013-5-16 19:57     标题: 【已解决】如何删除bat文件所在的文件夹

本帖最后由 tangqingfu 于 2013-5-28 08:55 编辑
  1. cd.. & rd /s /q "%~dp0"
复制代码
将上面的代码入在“启动.bat",运行”启动.bat"后,bat文件所在的文件夹还保留,不能删除干净
请教如何编写代码,做到删除自身的同时,还能删除bat文件所在的文件夹,即删除该文件夹?
作者: wjx515    时间: 2013-5-16 20:26

测试 cd.. & rd /s /q "%~dp0"

能将批处理本身和本身所在的文件夹删除啊
作者: tangqingfu    时间: 2013-5-16 20:46

回复 2# wjx515
奇怪,我的系统是WinXP,不能删除干净
作者: tangqingfu    时间: 2013-5-16 21:21

  1. SET DP="%CD%"
  2. cd.. & rd /s /q %DP%
复制代码
用上面的代码可以通过,能否请各位帮解释一下代码的含义?
作者: secondkill    时间: 2013-5-17 00:42

剩下一个文件夹不能删除
作者: Python    时间: 2013-5-17 08:55

回复 4# tangqingfu
  1. rem 把当前目录赋值给变量DP
  2. SET DP="%CD%"
  3. rem 切换到上级目录并删掉变量DP里面保存的目录
  4. cd.. & rd /s /q %DP%
复制代码

作者: tangqingfu    时间: 2013-5-17 10:16

回复 6# Python

谢谢您的指点,为什么运行下面的代码,文件夹会删除不掉?
  1. cd.. & rd /s /q "%~dp0"
复制代码

作者: Python    时间: 2013-5-17 10:55

回复 7# tangqingfu


可能是操作系统不一样吧,有的人可以删掉:
http://www.bathome.net/viewthread.php?tid=4314#pid27659
http://www.bathome.net/thread-5292-1-1.html
作者: cutebe    时间: 2013-5-17 16:03

CMD 中运行时若无法删除出现:
另一个程序正在使用此文件,进程无法访问。
找不到批处理文件。

因为是有程序在使用这个目录或目录里的文件
如:1用记事本打开了BAT文件,2explorer进程意外地无法断开与目录的访问




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