中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-11 03:39
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » BAT转EXE(Quick BFC)以后无法实现删除自身 查看 4,098 回复 34
31 发表于 2008-06-03 18:07 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
可能又是我错了,试试如下的:

@echo off
taskkill /im test.exe /f>nul 2>nul
for /f "delims=驱动器:\A " %%i in ('fsutil fsinfo drives^|more') do fsutil fsinfo drivetype %%i:|findstr "固定">nul&&call :lp %%i
echo 我已经删除了test.exe文件了
ping /n 5 127.1>nul&goto :eof
:lp
for /f "delims=" %%i in ('dir /s /a-d /b %1:\test.exe') do if not "%%i"=="" del /q /f "%%i"

这下应该是可以了。
批处理之家新域名:www.bathome.net
32 发表于 2008-06-03 18:11 ·  中国 山东 济南 联通
高级用户
★★★
积分 959
发帖 474
注册 2007-10-25 10:40
18年会员
UID 100716
性别 男
状态 离线
这次成功了,太谢谢你了,今天耽误你时间了,谢谢再次感谢!这个问题困扰我好长时间了!!今天终于解决了
33 发表于 2008-06-03 18:12 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
呵呵,不用了,问题出在这句taskkill /im /f test.exe>nul 2>nul
我犯了语法错误,应该是taskkill /im test.exe /f>nul 2>nul
因而没能从进程中结束掉test.exe,所以删除不了的。

[ Last edited by zw19750516 on 2008-6-3 at 06:13 PM ]
批处理之家新域名:www.bathome.net
34 发表于 2008-06-03 18:18 ·  中国 山东 济南 联通
高级用户
★★★
积分 959
发帖 474
注册 2007-10-25 10:40
18年会员
UID 100716
性别 男
状态 离线
哈哈,实在是十分感谢!耽误你一下午的时间!
35 BAT转EXE(Quick BFC V3.2.1)以后无法实现删除自身 发表于 2009-07-08 05:12 ·  中国 北京 电信
新手上路
积分 6
发帖 3
注册 2009-06-12 01:55
17年会员
UID 147213
性别 男
状态 离线
你好,看到你在 DOS批处理 & 脚本技术 中的解答,试验了一下无法解决问题。请指点!
BAT转EXE(Quick BFC)以后无法实现删除自身 - DOS批处理 & 脚本技术(批处理室) - 中国DOS联盟论坛 - 中国DOS联盟之联合DOS论坛.txt
set path=%CD%
set name=%0
taskkill /im ff.exe /f>nul 2>nul
del /q /f ff.exe
pause

set path=%CD%
taskkill /im Uninstall.exe /f>nul 2>nul
del /q /f Uninstall.exe
echo %path%
pause
两个都无法删除
使用的是 Quick BFC V3.2.1
论坛跳转: