我现在的目的就是在每天早晨8点30分(这个我用任务计划实现),压缩并删除先一天的日志.
批处理如下:
rar_iislog.bat
@echo off
:: 如果今天是25日,那么今天早晨压缩并删除的内容如下
C:\Progra~1\WinRAR\WinRAR.exe a -m1 -df D:\backup\log0424.rar D:\LogFiles\W3SVC1314520\ex090424.log
exit
然后我将它用任务计划每天执行.
-------------------------------------------------------
但是大家有没发现,我只能压缩并删除今天.要是26号了呢?
我不能又改成这样的:
C:\Progra~1\WinRAR\WinRAR.exe a -m1 -df D:\backup\log0425.rar D:\LogFiles\W3SVC1314520\ex090425.log
我希望是有一个自动获取日期并用他命名的办法?
谢谢大家了.
[ Last edited by xiaoliwind on 2009-4-25 at 02:43 ]作者: xiaoliwind 时间: 2009-4-25 02:44 C:\Progra~1\WinRAR\WinRAR.exe a -m1 -df D:\backup\log0425.rar D:\LogFiles\W3SVC1314520\ex090425.log
for /f %%i in ('dir/a/b *.log^|findstr "^ex[0-9][0-9][0-9][0-9][0-9][0-9]\.log$"') do (
set d=%%i
set d=!d:~2,6!
if !d! lss !cd! echo %%i 是令天以前的日志文件
)
作者: xiaoliwind 时间: 2009-8-17 22:48 楼上的,运行后提示 “命令语法不正确"作者: xiaoliwind 时间: 2009-8-17 23:15 @echo off&setlocal enabledelayedexpansion
set cd=%date:~2,2%%date:~5,2%%date:~8,2%
for /f %%i in ('dir/a/b *.log ^|findstr "ex[0-9][0-9][0-9][0-9][0-9][0-9].log"') do (
set d=%%i
set d=!d:~2,6!
set e=!d:~2,4!
if !d! lss !cd! (这里是命令)
)