bat脚本监听文件大小备份日志
@echo off:looprem --------------------rem 开始拼接日期+时间字符串,如: 20130726175600rem 早上小时取出来不是07,前面是个空占位,所以对此做处理rem set hour=%Time:~0,2%set min=%Time:~3,2%set sed=%Time:~6,2%echo %hour%小时if %hour% lss 10 (set minhour=0%Time:~1,1%set dt=%Date:~0,4%%Date:~5,2%%Date:~8,2%%minhour%%min%%sed%echo %dt%) else (set dt=%Date:~0,4%%Date:~5,2%%Date:~8,2%%hour%%min%%sed%)echo %dt%rem 对print.log文件进行解析,读取当前文件大小,并打印for %%b in (print.log) do (set filesize=%%~zbecho %%~dpb%%~nxb %%~zb字节)rem 打印print.log文件当前字节数,如果大于指定值,那么将此文件改名为如:print20130726175600.logrem 如果没到指定值,那么可以继续写入,如果是监听的话不进行写入rem 如果正好为此值,打印,在此测试用,实际中用if else就可以echo %filesize%if %filesize% gtr 100 (echo 大了,重新生成一个新的ren print.log print%dt%.log )if %filesize% lss 100 (echo 不到100,可继续写)if %filesize% equ 100 (echo 正好够100) pauseecho 打印一行到文件. >>print.logrem 下面是一种延时,替代这里的暂停,但经过测试发现不精确,延时10秒,实际达到12秒::echo wscript.sleep wscript.arguments(0)*1000>delay.vbs::delay.vbs 10rem 下面也不精确,延时3秒::echo wscript.sleep(3000)>uu.vbs::cscript //nologo uu.vbs & del uu.vbsgoto loop