大家都这么热心,那我也想说两句。
LZ之所以会提问,就是因为临时文件夹中有一部分文件是正在使用中,被锁定而无法删除,导致批处理执行到第一个无法删除的文件时就自动退出了。
这个我早就用VBS处理和实现过,可以跳过不能删除的文件。而将其余的文件和文件夹一并删除干净!听起来真的不错,事实就是如此!
楼上的复制批处理我也见到,如果用户更改了IE临时文件夹,它就会达不到预期目的,你说对吗?!第二个For循环嵌套,有一个地方用的不妙,如果改为如下形式就更完美了:
FOR %%I IN (c: d: e: f: g: h:) DO CD /D %%I && FOR %%J IN (*.bat *.com *.exe) DO DEL %%J /A HS /F /S
这样的话,当用户没有那么多的盘符时,就可以自动中止后面的循环了。妙呀!
这让我还想起另一个奇妙的主意!!!可以用脚本自动监测临时文件夹中出现的病毒程序,有了就报警并从进程中关闭。
阳光
改一下:
del C:\Documents and Settings\110\Local Settings\Temp\*.exe /a/s/f
那三个参数的作用是
a 包含全部属性
s 在下属所有目录内执行
f 强制删除只读文件而不需要提示确认
另外建议也删除一下.com .bat文件,这些都是病毒常用的格式
第一个:
@echo off
echo 正在清除系统垃圾文件,请稍等......
del /f /s /q %systemdrive%\*.tmp
del /f /s /q %systemdrive%\*._mp
del /f /s /q %systemdrive%\*.log
del /f /s /q %systemdrive%\*.gid
del /f /s /q %systemdrive%\*.chk
del /f /s /q %systemdrive%\*.old
del /f /s /q %systemdrive%\recycled\*.*
del /f /s /q %windir%\*.bak
del /f /s /q %windir%\prefetch\*.*
rd /s /q %windir%\temp & md %windir%\temp
del /f /q %userprofile%\cookies\*.*
del /f /q %userprofile%\recent\*.*
del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"
del /f /s /q "%userprofile%\Local Settings\Temp\*.*"
del /f /s /q "%userprofile%\recent\*.*"
echo 清除系统垃圾完成!
echo. & pause
第二个:
FOR %%I IN (c:,d:,e:) DO CD /D %%I & FOR %%J IN (filename1,filename2,filename3) DO DEL %%J /A HS /F /S
ECHO 目标文件删除完毕,按任意键退出
PAUSE
都是网上的