-1

我想做的是在执行后自行删除我的文件,这涉及退出 cmd 的脚本。有没有办法排列一个.bat,它将位于一个未知目录中,在.cmd关闭后标记为删除,这样它就不会弄乱我的代码?

我现在使用的代码只是为了找到我需要的路径

    dir /B /S filename.bat

如果我尝试将其设置为变量,

    set var=dir /B /S filename.bat
    del %var%

我收到的返回消息是“B”是一个无效的开关。这将(希望)在 Windows 7 机器上大规模远程实施(阅读:成像)。最重要的是,上面的代码会在执行过程中被删除,导致程序终止。我可能正在查看记录响应,然后将其打印到 var,但我对此并不陌生,而且我几乎不知道如何在 cmd 关闭后执行删除命令。我愿意接受比查找/删除文件更好/更有效的建议。

4

2 回答 2

1

在批处理文件中插入这一行:

del "%~F0" & exit

上一行删除正在运行的批处理文件并退出 cmd.exe

于 2012-05-21T00:29:33.903 回答
0

您可以使用%0来获取正在执行的批处理文件的名称。

因此,要删除并退出,您可以使用:

del %0 /f /s /q
exit >nul
于 2012-05-21T08:26:35.657 回答