中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-23 14:01
47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,273 会员排行
DOS批处理 & 脚本技术(批处理室) » 如何实现查找快捷方式文件中的特定字符并将其删除
可打印版本  2,705 / 5
第1楼 MYS 发表于 2013-01-11 09:05
元老会员 发帖 1,637 积分 5,170 来自 广东佛山
如何实现查找快捷方式文件中的特定字符并将其删除
学校许多电脑中了雨云蠕虫,在每个文件夹下生成隐藏属性的thumb.db文件和许多仿文件夹图标快捷方式,其快捷方式(LNK)文件中都有
wscript.exe特征字符串。
如何实现在批处理中逐个查找里面的特征字符串并将有这个字符串的快捷方式删除?
因为我做了个批文件一次性清除病毒留下的文件,
del thumb.db /f /q /s /ah
del thumbs.db /f /q /s /ah
del autorun.inf /f /q /s /ah
del *.lnk /f /q /s
del *.rtf /f /q /s
这个批文件用在D、E、F盘等没问题,但用在C盘就麻烦了,因为它会删除所有快捷方式。

[ Last edited by MYS on 2013-1-11 at 09:23 ]

附件
aa.png (157.39 KiB)
第2楼 MYS 发表于 2013-01-14 23:00
元老会员 发帖 1,637 积分 5,170 来自 广东佛山
看来求人不如求已,自己实验吧。
目前已经做到
for /r %%a in (*.lnk) do ( findstr /m /ilc:"wscript" %%a)
可以搜索当前目录下的LNK文件内的字符串wscript,并且只把LNK的文件名输出来,剩下来是如何找到并DELETE了。继续实验中。
第3楼 MYS 发表于 2013-01-14 23:14
元老会员 发帖 1,637 积分 5,170 来自 广东佛山
另一个方法就是:
findstr /s /m /ilc:"wscript" *.lnk >file.txt

经测试,两种方法都可以把文件名找出来,剩下是如何利用来删除文件了。

[ Last edited by MYS on 2013-1-14 at 23:29 ]
第4楼 MYS 发表于 2013-01-15 00:02
元老会员 发帖 1,637 积分 5,170 来自 广东佛山
最后终于成功了,虽然有些文件夹下的文件无法删除。至少删除快捷方式安全了。
echo 程序正在寻找和删除Yuyun蠕虫的快捷方式
for /r %%a in (*.lnk) do ( findstr /m /ilc:"wscript" %%a ) && del /q /f %%a

真是求人不如求已。好久没用DOS了,好在基础还在。
第5楼 MYS 发表于 2013-01-15 08:58
元老会员 发帖 1,637 积分 5,170 来自 广东佛山
但还有一个问题:
文件夹或文件名带空格的话,这样的查找方法就删不了。看来用DEL不行,要找找有没有别的方法。
第6楼 Gamepower 发表于 2013-11-30 11:49
新手上路 发帖 2 积分 2
带空格的路径用引号括起来
如 C:\"My Documents"\
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023