中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-11 04:30
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助]del %0 的问题
可打印版本  1,227 / 7
第1楼 yiyepianzhou 发表于 2007-11-21 15:11
初级用户 发帖 47 积分 138
[求助]del %0 的问题
在我的c:\windows下和我的u盘下都有一个叫test.bat的批处理
并且一模一样。
在它的代码最后有一句是del %0,
我运行c:\windows中的test.bat,
我想让它删除自己,但是我把u盘插上后,u盘中的test.bat被删除了,
而 c:\windows中的还在。
有点奇怪
第2楼 scriptor 发表于 2007-11-21 18:03
银牌会员 发帖 555 积分 1,187
试一试这个

del %~n0
第3楼 scriptor 发表于 2007-11-21 18:04
银牌会员 发帖 555 积分 1,187
Originally posted by yiyepianzhou at 2007-11-21 15:11:
在我的c:\windows下和我的u盘下都有一个叫test.bat的批处理
并且一模一样。
在它的代码最后有一句是del %0,
我运行c:\windows中的test.bat,
我想让它删除 ...


del %0
可以自删除啊~~
我刚试过了!!

你的是怎么回事呢~~
第4楼 fastslz 发表于 2007-11-21 21:12
铂金会员 发帖 2,315 积分 5,493 来自 上海
del "%0"
第5楼 alchemist 发表于 2007-11-22 12:52
高级用户 发帖 193 积分 652
Batch file missing
第6楼 yiyepianzhou 发表于 2007-11-22 14:16
初级用户 发帖 47 积分 138
我试了一下:
在u盘里有一个test.bat
@echo off
del test.vbs
ping 127.1 -n 3
del %0

一个test.vbs
Dim hw
Set hw=WScript.CreateObject("WScript.Shell")
hw.Run "c:\windows\test.bat" ,0,true

一个dy.bat
@echo off
copy test.bat %systemroot%
copy test.vbs %systemroot%
start %systemroot%\test.vbs

用dy.bat将test.vbs 与test.bat复制到%systemroot%中
再运行test.vbs,test.bat可以删除自己,但不能删除%systemroot%中的test.vbs,反而将u盘中的test.vbs给删了。
如果不用dy.bat来运行test.vbs,而是直接在%systemroot%中去运行,
结果就正常了。
如果将test.vbs改为:
Dim hw
Set hw=WScript.CreateObject("WScript.Shell")
hw.Run "test.bat" ,0,true
用dy.bat重复上面并用它来运行改过后的test.vbs,
就是u盘中的test.bat和test.vbs都被删了windows中的就没有。
第7楼 Dos2008 发表于 2007-11-22 17:48
新手上路 发帖 8 积分 18
可以删除本身呀,我一直都这样用的!没出过问题!
第8楼 toolpc 发表于 2009-01-13 19:05
新手上路 发帖 3 积分 5
局驭网的VBS.
可以删除的
肯定你路镜没写好..标明
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023