如何使批处理文件删除它自己的目录?

Max*_*Lam 5 windows command-line batch-file command-prompt

好吧,我很抱歉我对此很陌生,但我试图让我的批处理文件在启动后删除它自己的目录。这是我的文件夹的排列方式:

  • 文件夹1
    • 删除.bat

我的目标是在“delete.bat”启动后让“delete.bat”删除“Folder1”。这是我的代码:

rd /s /q %~dp0..\Folder1
Run Code Online (Sandbox Code Playgroud)

这似乎可行,但它只删除“Folder1”的内容,而不是整个目录本身。我究竟做错了什么?

Vad*_*ché 1

来自rd 的相应MSDN 链接:

不能使用 rmdir 删除当前目录。您必须首先更改到不同的目录(不是当前目录的子目录),然后使用 rmdir 和路径。

我想这就是您的情况出现的问题,因为批处理文件位于您要删除的目录中。