Board logo

标题: 查找文件并删除在文件中的指定"字符串" [打印本页]

作者: ZJHJ     时间: 2010-3-13 22:35    标题: 查找文件并删除在文件中的指定"字符串"

最近因电脑的网页被病毒修改,中了Win32.Jadtre.B病毒。实际上是在网页中写了一行下载木马的网址:***type="text/javascript" src="http://web.nba1001.net:8888/tj/tongji*****
手动查找清除有些困难,写了这个BAT自动查找并清除:

  Quote:
@echo off
cls
@title 查找并删除在文件中的指定"字符串" 编辑:Wang wei QQ:251485609 BY20100312
@echo.
@echo          在当前含子目录查找文件并删除在文件中的指定"字符串"及所在行
@echo.
@echo             (先获取"字符串"存在文件及路径,避免对非目标文件操作)
@echo.
set /p lx=   请输入要查找文件的类型(默认: *.txt)
@echo.
set /p key=  待查找字符串(多个字符串请用空格隔开):
if "%lx%"=="" set lx=txt
findstr /i /s "%key%" "*.%lx%" >扫描记录.txt
cls
@echo.
@echo  请检查 "扫描记录.txt",如果不规范(每行只能有一个路径)可手动分行.
call 扫描记录.txt
echo 以下文件已经执行"%key%"字符串的删除:>删除日志.txt
for /f "tokens=1 delims=:" %%i in (扫描记录.txt) do @echo %%i>>cf.txt
cd.>执行路径.txt
for /f "delims=" %%i in (cf.txt) do (
  if not defined %%i set %%i=A & echo %%i>>执行路径.txt
)
cls
if not exist cf.txt echo 没有发现文件!& ping n 3 127.1>nul &goto scwj
del cf.txt
for /f "delims=" %%i in (执行路径.txt) do (
findstr  /r  /v  "%key%" "%%i">tem.txt
echo %%i >>删除日志.txt
del "%%i"
move tem.txt "%%i"
)
call 删除日志.txt
:scwj
del 扫描记录.txt
del 执行路径.txt
del 删除日志.txt
exit

[ Last edited by ZJHJ on 2010-3-13 at 22:36 ]
作者: pizigao     时间: 2010-3-19 13:59
这个我收了~正好用的着