|
qpmgljf
初级用户
积分 125
发帖 49
注册 2006-12-24
状态 离线
|
『楼 主』:
杀移动盘病毒,请高手指点。
小弟潜水好长时间了,最近刚刚大学毕业,没事做了一个杀移动盘的病毒的BAT,做得不好,请大家给指点一二。谢谢。
::此脚本用来清除U盘中的隐藏病毒,建议在硬盘上本脚本。
::by 李剑锋 2007/6/20
@echo off&color 1f&mode con: cols=70 lines=20
setlocal enabledelayedexpansion
title U盘病毒清理工具硬盘版
cls
@echo.
set /p file= 请输入盘符:
for /f "skip=1" %%i in ('wmic logicaldisk where "deviceid='%file%:'" get Description 2^>nul') do set type=%%i
if not defined type set type=此驱动器不存在!
echo %file%:盘的类型为: %type%
echo.
echo 请按任意键进行查毒~
pause>nul
set pan=%file%:\
:BEGIN
cls
ECHO.
ECHO ╭═════════════╮
ECHO ╭═══┤ U盘病毒清理工具U盘版 ├═══╮
ECHO ║ ╰═════════════╯ ║
ECHO ║ [1] 查杀病毒 ║
ECHO ║ [2] 恢复被病毒隐藏的文件夹 ║
ECHO ║ [3] 退出 ║
ECHO ╟─────────────────────╢
ECHO ║ 注意:1. 请确认本程序放在U盘根目录下; ║
ECHO ║ 2. 请谨慎使用本程序,删除无法恢复。║
ECHO ╰═════════════════════╯
ECHO.
SET Choice=
SET /P Choice= 请选择操作项目:
IF NOT '%Choice%'=='' SET Choice=%Choice:~0,1%
IF /I '%Choice%'=='1' GOTO one
IF /I '%Choice%'=='2' goto three
IF /I '%Choice%'=='3' goto end
goto BEGIN
:one
cls
set jj=
@echo 查出的病毒文件为:
dir %pan%*.exe %pan%*.vbs %pan%*.inf %pan%*.com /aashr /ashr /ash /ahr /ah /ar /b/p || set jj=a
dir %pan%*.* /aashr /b/p || set jj=a
if "%jj%"=="a" cls & echo. & echo 您的U盘是干净的! & echo. & pause & goto yc
set choice=
echo.
echo 删除以上列出的文件,请按C回车;
echo 要排除文件,请输入文件全名后回车;
echo 退出程序请按Q回车;
echo.
SET /P Choice1= 请输入:(文件名/C/Q)
attrib -s -h -r %pan%%choice1%>nul
IF /I '%Choice1%'=='c' goto two
IF /I '%Choice1%'=='q' exit
IF NOT '%Choice1%'=='' SET Choice1=%Choice1:~0,1%
goto one
:two
dir %pan%*.exe %pan%*.vbs %pan%*.inf %pan%*.com /aashr /ashr /ash /ahr /ah /ar /b>list.txt
dir %pan%*.* /aashr /b>>list.txt
@echo 正在删除病毒中,请稍等...
@echo.
for /f "delims=" %%a in (list.txt) do attrib -h -s -r %pan%"%%a" & del %pan%"%%a">nul
echo.
echo 病毒已经删除
echo.
:yc
dir /adh %pan% /b>nul
if not errorlevel 1 goto ask
goto begin
:ask
echo.
SET Choice2=
SET /P Choice2= 发现隐藏文件夹,是否恢复?[y/n]:
IF NOT '%Choice2%'=='' SET Choice2=%Choice2:~0,1%
IF /I '%Choice2%'=='y' goto three
IF /I '%Choice2%'=='n' goto begin
)
goto begin
:three
cls
set kk=
dir /adh %pan% /b>nul ||set kk=a
cls
echo.
echo 正在恢复被病毒隐藏的文件夹,请稍候...
echo ═══════════════════════════════════
echo.
if "%kk%"=="a" cls & echo 没有被病毒隐藏的文件夹 & echo. & pause & goto begin
cls
for /f "delims=" %%i in ('dir /adh %pan% /b') do attrib -h -s -r %pan%"%%i" & echo "%%i"被恢复。
echo ═══════════════════════════════════
echo.
echo 文件夹已经全部被恢复
echo.
pause
goto begin
:end
del list.txt>nul
cls
|
|
2007-7-4 21:43 |
|
|
zxlxsqzy
初级用户
积分 126
发帖 47
注册 2007-7-2
状态 离线
|
『第
2 楼』:
我是刚开始学的,对你的批处理不能做任何评价。
我提一个意见哈
能不能让你的批处理放在任何一个位置都能清理U盘的病毒。
如果得把这个批处理放在U盘本身根目录下才能用的话,会出现一些意外的事情。
|
|
2007-7-4 21:59 |
|
|
luowanli1984
初级用户
高級總監
积分 65
发帖 27
注册 2007-6-20 来自 china
状态 离线
|
『第
3 楼』:
我是新來的,我想問,你的可以殺U盤病毒,也能殺其它盤病毒吧?
|
走過路過,千萬別錯過。 |
|
2007-7-5 08:22 |
|
|
lcgroger
新手上路
积分 8
发帖 3
注册 2007-4-10
状态 离线
|
『第
4 楼』:
这个bat随便放在哪儿都可以查杀常见的U盘病毒!
只要是根目录下的U盘病毒都可以查杀!
自己为了方便写的,请高手指点!
@echo off
echo.
echo.
echo.
echo ================================================================================
echo.
echo 这是一个U盘病毒查杀程序,在插入U盘后运行此程序就可以查杀一般U盘病毒!
echo.
echo 两秒后开始查毒!
echo ================================================================================
ping -n 3 -l 8 127.1>nul
for /d %%1 in (C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z) do (if exist %%1: (%%1: &attrib -s -a -r -h *.*>nul & (if EXIST autorun.inf (echo %%1盘发现在U盘病毒!&echo.&echo ================================================================================&echo 正在查杀%%1盘的U盘病毒,请稍候...&echo. &type autorun.inf|find "open=">te &type te&FOR /F "eol=s tokens=2,2,2,* delims== " %%i in (te) do taskkill /f /im %%i>nul&del %%1:\%%i&del %%1:\autorun.inf&del %%1:\te&echo.&echo %%1盘病毒查杀完成!&echo.&echo ================================================================================&echo.) else (echo %%1盘没有发现在U盘病毒!&echo.))))
attrib +s +a +r +h c:\boot.ini>nul
attrib +s +a +r +h c:\bootfont.bin>nul
attrib +s +a +r +h c:\IO.SYS>nul
attrib +s +a +r +h c:\MSDOS.SYS>nul
attrib +s +a +r +h c:\NTDETECT.COM>nul
attrib +s +a +r +h c:\ntldr>nul
echo 病毒查杀完毕!请稍候...
ping -n 3 -l 8 127.1>nul
cls
echo.
echo.
echo.
echo ================================================================================
echo.
echo 病毒查杀完成!请拔下U盘重新再插!!!
echo.
echo.
echo 五秒后窗口关闭!
echo ================================================================================
ping -n 6 -l 8 127.1>nul
exit
[ Last edited by lcgroger on 2007-7-5 at 02:01 PM ]
|
|
2007-7-5 13:49 |
|
|