[bat批处理文件] 压缩备份

1.压缩指定的部分文件

@echo off

set year=%date:~0,4% 

set month=%date:~5,2% 

set day=%date:~8,2% 

set curdate=%year%%month%%day% 

for %%i in (D:\logs\logs\OmsAdmin.2016-%month%-*.log) do "C:\Program Files (x86)\WinRAR\winrar.exe" a -m5 -ibck D:\logs\log_%curdate%.rar %%i

参数说明:

(1) for语句支持通配符找文件,例如“OmsAdmin.2016-%month%-*.log”

(2) for语法: for %%i in 集合 do 命令(%%i)

(3) winrar语法:winrar a -m5 -ibck 生成的压缩文件存储路径 被压缩文件

      其中,a : 压缩(e:解压)

    -m5:按照第5等级最大程度压缩

           -ibck:后台运行

 

2.删除过期备份文件

forfiles /p D:\logs\logs /s /D -30 /c "cmd /c del @file"

参数说明:

(1) forfiles通常用作对文件或文件夹的批处理,

  其中,/p:开始搜索的路径

       /s:递归到子目录

       /D:文件最后修改的日期时间 +/-数字

 

3.复制文件

xcopy D:\from\log_%curdate%.rar D:\to\log_%curdate%.rar

 

posted @ 2016-11-16 16:46  panpan_v1  阅读(5252)  评论(0编辑  收藏  举报