![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-02 21:42 |
共 48,038 主题排行 / 350,123 发帖 / 今日 1 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 终于实现了名单列表 准确调用! |
| 可打印版本 827 / 5 |
| 第1楼 PPdos | 发表于 2006-12-30 11:19 |
| 高级用户 发帖 268 积分 783 | |
|
终于实现了名单列表 准确调用! @echo off
echo [A]查找文件选项 echo. set /p "a=输入可疑文件名称:" dir c:\ /s /b /a:|find /i /N "%a%">list.txt dir d:\ /s /b /a:|find /i /N "%a%">>list.txt :before cls&echo [B]删除文件选项 type list.txt set /p b="输入[]内编号:" if %b% lss 10 (set w=3) else if %b% lss 100 (set w=4) else if %b% lss 1000 (set w=5) else if %b% lss 10000 (set w=6) else if %b% lss 100000 (set w=7) else if %b% lss 1000000 (set w=8) else if %b% lss 10000000 (set w=9) findstr /C:"[%b%]" list.txt>del.txt :: /O 匹配行前字符偏移量 /N 所在行编号 SETLOCAL ENABLEDELAYEDEXPANSION set /p c=<del.txt del /p "!c:~%w%!" goto before |
|
| 第2楼 namejm | 发表于 2006-12-30 11:22 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
请楼主说说这个批处理具体有什么作用,以方便理解。
|
|
| 第3楼 PPdos | 发表于 2006-12-30 11:42 |
| 高级用户 发帖 268 积分 783 | |
|
我是用来搜索病毒程序 .dll .exe .tmp .com... 通过选择 标签 直接删除 dir列表中的某个文件 关键点是最后的变量延迟
|
|
| 第4楼 zh159 | 发表于 2006-12-30 11:51 |
| 金牌会员 发帖 1,467 积分 3,687 | |
|
那个变量延迟经常用^_^
|
|
| 第5楼 PPdos | 发表于 2006-12-30 12:10 |
| 高级用户 发帖 268 积分 783 | |
|
我昨天弄了一晚上都没有睡觉呢~~` 这个问题本来是 来自于手懒~~~
本来想~ 如果能在dir /b /s列表中看到的路径前加 上标签 直接选择 A B这样来 删除发现的可疑文件该多方便啊 后来就这样子做了个框架~ 如果谁可以在不产生 新文件的情况下完成此操作 那就要大费脑袋了 我用more做成功一部分 也就是直 接把 结果追加到批处理尾部 通过more 的+n 但是不知道怎么把批处理还原成 操 作前的样子~ 还有那个set /p var=<a.txt 只能导入其中的一行不知道有没其他 好方法 最麻烦的就是截取变量的验证与偏移值 哎 几次都差点上来求救 还好我喜 欢琢磨 哇哈哈~ 终于可以睡觉了 还有reg query 下的参数怎么那么少 直接读出来的值都找不到位置...加上去改良 成 DOS杀毒机~@@~ |
|
| 第6楼 electronixtar | 发表于 2006-12-30 13:11 |
| 铂金会员 发帖 2,672 积分 7,493 | |
凭这句话,顶~ |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |