Board logo

标题: [文件操作] 求教,怎么写运行并删除指定文件和自身bat,同文件夹,??? [打印本页]

作者: qiqing    时间: 2021-8-12 14:42     标题: 求教,怎么写运行并删除指定文件和自身bat,同文件夹,???

例如:
XXX文件夹里,有a.exe,写一个批处理b.bat,也放到XXX文件夹里,运行b.bat,可以打开一下a.exe(双击),a.exe不需要关闭,只需要双击或者打开一下,然后再彻底删除a文件和b.bat,不显示批处理窗口,彻底删除不进回收站。
都是在同文件夹里操作,请教一下,非常感谢!
作者: hztccy    时间: 2021-8-12 14:53

在代码结尾加入
del *.*
del %0
作者: hztccy    时间: 2021-8-12 14:56

如果有提示就在家
del /f /s /q *.*
del %0
作者: qiqing    时间: 2021-8-12 15:08

回复 3# hztccy


    还是不行,麻烦你把完整版写出来我试试,可以有偿
作者: hztccy    时间: 2021-8-12 15:23

回复 4# qiqing


    首先你如果运行过文件,肯定有进程需要结束,
可以使用taskkill结束

然后删除自身和同文件夹
可以使用rm和del
最后的不显示批处理需要vbs配合,这个我也不太懂
批处理我只能给出这个
taskkill (进程明或pid)
del *.*
del %0
作者: qiqing    时间: 2021-8-12 15:43

回复 5# hztccy


    不需要结束进程,只管打开a.exe,间隔3秒就可以删除了,你全部写出来我看看,行的话,一会发你20块钱红包
作者: qiqing    时间: 2021-8-12 15:44

回复 5# hztccy


    好吧,谢谢,只好寻求他人帮助了
作者: hztccy    时间: 2021-8-12 16:01

回复 7# qiqing

你的a.exe是文件
打开就有进程的,如果会自动关闭,那确实不需要结束进程
如果不会,可以加入ping127.0.1>nul延时命令在前面
作者: Batcher    时间: 2021-8-12 16:01

回复 4# qiqing


请参考Q-01观察一下哪行代码在报错以及详细的报错信息:
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
作者: idwma    时间: 2021-8-12 16:24

  1. set "test=%temp%\%random%tmp.exe"
  2. move "a.exe" "%test%"
  3. start "%test%"
  4. del %0
复制代码

作者: qiqing    时间: 2021-8-12 16:48

回复 8# hztccy


    会自动关闭,所以不需要结束进程
作者: qiqing    时间: 2021-8-12 16:53

回复 10# idwma


    会有窗口,而且删除了文件夹里所有exe文件
作者: qiqing    时间: 2021-8-12 16:54

回复 8# hztccy


   如果 可以的话,完整代码写出来,我试试
作者: idwma    时间: 2021-8-12 22:15

bat本身不能隐藏窗口,要调用vbs或js,不如直接用vbs或js
  1. //另存为xx.js
  2. var WshShell = WScript.CreateObject("WScript.Shell");
  3. WshShell.run("a.exe");
  4. WScript.Sleep(3000);
  5. fso = new ActiveXObject("Scripting.FileSystemObject");
  6. fso.DeleteFile("a.exe");
  7. fso.DeleteFile(WScript.ScriptName);
复制代码

作者: yakeyun    时间: 2021-8-12 22:38

回复 1# qiqing


@echo off
@move "a.exe" "%temp%"
@start %temp%\a.exe
@if exist a.exe del a.exe
@if exist b.bat del b.bat
@exit




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