

本贴共获得感谢 X
4
教您一招不占用资源的杀毒方法
电脑配置低,还对自己从网上下载下来的东西拿不准的朋友可以采用以下方法,用mcafee的命令行
版杀毒软件进行杀毒,优点就是不需要注册,平时不占用系统资源,只要您联网,可以通过以下命令
在线安装和升级杀毒软件,一个文件就可以满足您在不同电脑上的杀毒需求。请把以下文件另存为扩
展名为.bat的文件,然后运行,请保证运行时电脑连网(某些杀毒软件会误报wget.vbs为病毒,其实只
是误报,请放心使用,懂电脑的朋友也可以通过看源码来验证)
-----------------------------------------------------------分划符----------------------------------------------------------------------
@ECHO OFF
SETLOCAL
SET VirusScanDir=D:\VirusScan
SET UpdateDir=%VirusScanDir%\Update
SET UpdateIni=%UpdateDir%\update.ini
SET UpdateiniURL=http://download.nai.com/products/datfiles/4.x/nai/Chinese/simplified/update.ini
SET VirusScanPath=http://download.nai.com/products/licensed/superdat/nai/Chinese/simplified
IF NOT EXIST %VirusScanDir% MD %VirusScanDir%
IF NOT EXIST %UpdateDir% MD %UpdateDir%
::如果系统中有wget或者curl,可以将DLProg和DLOutOPT设置为相应值,而不必使用脚本作为下载工具
SET WGETVBS=%UpdateDir%\wget.vbs
SET DLProg=cscript //nologo %WGETVBS%
SET DLOutOPT=
::SET DLProg=wget -q
::SET DLOutOPT=-O
IF NOT EXIST %WGETVBS% (
ECHO Set xPost = CreateObject^("Microsoft.XMLHTTP"^) > %WGETVBS%
ECHO xPost.Open "GET",Wscript.Arguments.Item^(0^),0 >> %WGETVBS%
ECHO xPost.Send^(^) >> %WGETVBS%
ECHO Set sGet = CreateObject^("ADODB.Stream"^) >> %WGETVBS%
ECHO sGet.Mode = 3 >> %WGETVBS%
ECHO sGet.Type = 1 >> %WGETVBS%
ECHO sGet.Open^(^) >> %WGETVBS%
ECHO sGet.Write^(xPost.responseBody^) >> %WGETVBS%
ECHO sGet.SaveToFile Wscript.Arguments.Item^(1^),2 >> %WGETVBS%
)
::获取已安装的VirusScan版本号
IF EXIST %VirusScanDir%\Globals.nsg (
FOR /F "eol=; tokens=2" %%I in ('findstr /R /C:"Set...DatVersion=" %VirusScanDir%\Globals.nsg') DO SET %%I
) ELSE (
SET CurrentFile=sdat0000.exe
)
::IF中如果嵌套了FOR ... DO,那么这个DO会在整个IF语句完成后才执行。所以下面这个设定不能放在上面的IF中
IF NOT "%DatVersion%"=="" SET CurrentFile=sdat%DatVersion%.exe
::获取VirusScan最新的版本号
IF EXIST %UpdateIni% DEL %UpdateIni%
%DLProg% %UpdateiniURL% %DLOutOPT% %UpdateIni%
FOR /F %%I in ('findstr exe %UpdateIni%') do SET %%I
IF "%FileName%"=="%CurrentFile%" (
ECHO VirusScan已经是最新版本,无须升级。
GOTO END
)
::SET /P在两层嵌套的IF中似乎无法正常工作,所以这里就不能用IF ELSE而用GOTO来替代
SET YESORNO=
IF /I "%CurrentFile%"=="sdat0000.exe" (
SET /P YESORNO=是否要安装VirusScan?[Y/N]:
) ELSE (
SET /P YESORNO=当前版本是%CurrentFile%,最新版本是%FileName%,是否升级?[Y/N]:
)
IF /I "%YESORNO%"=="Y" (
ECHO 开始升级...
IF EXIST %VirusScanDir%\sdat*.exe DEL %VirusScanDir%\sdat*.exe
%DLProg% %VirusScanPath%/%FileName% %DLOutOPT% %VirusScanDir%\%FileName%
%VirusScanDir%\%FileName% /E
PING -n 5 127.0.0.1 > NUL
ECHO 升级/安装完毕。
) ELSE (
ECHO 没有升级/安装。
)
:END
ENDLOCAL
@ECHO ON
-----------------------------------------------------------分划符----------------------------------------------------------------------
[ 本帖最后由 hij4cker 于 2007-3-1 10:08 AM 编辑 ]