遍历文件夹,找到符合指定日期前条件的文件夹,将文件夹下的文件压缩,并剪切文件夹

icerock807 2017-09-26 11:38:23
我要在一台 windows 2012 R2 的服务器上,实现一个日志文件清理的脚本,具体情况如下:

1.遍历D:\app\目录,找出目录下修改时间在32天前的*.log日志文件,压缩文件并删除源文件,然后剪切到 E:\appbak\ 目录下
2.遍历D:\data\目录,找出修改时间为32天前的 带有名称为“log-<YYYYMMDDHHmmss>”目录,并将找到的目录下的*.log日志文件压缩并删除源文件,然后再将这些符合条件的目录整个剪切到 E:\databak\目录下

压缩可以用7z的命令,路径是默认安装的,对批处理或者powershell都不是很熟,还希望各路大神能帮小弟的忙,批处理或powershell都可以,学习学习,谢谢!
...全文
670 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
@echo off rem 设置源地址 set url1=F:\ rem 设置目的地址 set url2=D:\ rem 当前日期 用于设置备份文件名, set date1=%date:/=% set date2=%date1:~0,8% rem 找到源地址中所有32天前 .log 文件 使用7z压缩为当前日期+日志备份.zip forfiles -p %url1% -m *.log -d 32 -c "cmd /c 7z a -tzip %date2%日志备份.zip @file" rem 删除掉压缩的文件 forfiles -p %url1% -m *.log -d 32 -c "cmd /c del /f /q @file" rem 将压缩包转移到目的地址 move %url1%%date2%日志备份.zip %url2% exit 以前我写的一个,我也是菜鸟,不过这个到时可以实现我的需求

6,850

社区成员

发帖
与我相关
我的任务
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
  • Windows Server社区
  • qishine
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧