![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-13 22:46 |
共 47,812 主题排行 / 349,916 发帖 / 今日 0 篇 / 48,268 会员排行 |
| 论坛回收站 » 帮我修改一下程序 |
| 可打印版本 2,004 / 5 |
| 第1楼 zqdarkday | 发表于 2007-11-14 12:01 |
| 中级用户 发帖 79 积分 210 来自 湖北 | |
|
帮我修改一下程序 我最近练习练习编写了一个杀U盘病毒的小程序,但是发现有个问题。
具体代码如下 @echo off cls cd\ color fc echo 正在使用本程序,请稍等... echo 为防止您的移动存储设备再次中招,所以在您的建了几个文件夹,不是病毒,请您放心! set m=autorun.inf for /f "skip=1 tokens=1,2* delims==" %%a in (autorun.inf) do (set n=%%b) for /d %%c in (c d e f h i) do (if exist %%c:\%n% attrib -s -h %%c:\%n% && del /f %%c:\%n%) for /d %%d in (c d e f h i) do (if exist %%d:\%m% attrib -s -h %%d:\%m% && del /f %%d:\%m%) for /d %%e in (c d e f h i )do (md %%e:\autorun.inf & attrib +s +h %%e:\autorun.inf) for /d %%f in (c d e f h i )do (md %%f:\autorun.ini & attrib +s +h %%f:\autorun.ini) for /d %%g in (c d e f h i )do (md %%g:\autorun.exe & attrib +s +h %%g:\autorun.exe) pause 当c d e f 等盘中如果没有autorun.inf 或它指定的.exe文件的话,del 就会删除c d e f中的所有文件,连 && 都没用了,请大家帮我修改下,其实我觉得这是个大问题耶!!! [ Last edited by zqdarkday on 2007-11-14 at 12:22 PM ] |
|
| 第2楼 lxmxn | 发表于 2007-11-14 13:09 |
| 版主 发帖 4,938 积分 11,386 | |
|
应该不会删除所有文件,你是不是搞错了?
|
|
| 第3楼 zqdarkday | 发表于 2007-11-14 13:26 |
| 中级用户 发帖 79 积分 210 来自 湖北 | |
|
re lxmsn :我试过了是不会删除*.*
del /f %%c:\%m% 但%m%没有的时候你说会怎么样呢??? 关于这点是什么意思啊? 但一个变量为空的时候,cmd还要提示是什么意思啊? 是不是所有的都是这样呢? 我现在还是不敢del /q 因为是我同学用的,怕把他们的东西搞没了, 希望高手解决下这个问题!!! [ Last edited by zqdarkday on 2007-11-14 at 01:41 PM ] |
|
| 第4楼 lxmxn | 发表于 2007-11-14 13:52 |
| 版主 发帖 4,938 积分 11,386 | |
|
del /f %%c:\%n%
当n为空值的时候,会提示你删除%%c:\*,这只是%%c根目录里面的所有文件,不包括子目录。 可以弄个判断语句来判断%n%时候为空,在做下一步的处理。。 if not "%n%"=="" dosomething .... |
|
| 第5楼 zqdarkday | 发表于 2007-11-14 18:44 |
| 中级用户 发帖 79 积分 210 来自 湖北 | |
|
谢谢哦,真的是根目录里面的所有文件,学习了
|
|
| 第6楼 sgzhou6688 | 发表于 2010-05-23 13:13 |
| 中级用户 发帖 110 积分 231 来自 中国大陆 | |
|
不是这样的写的呀》》》》》》》》》》》》》》》》》》。。
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |