使用forfiles自动删除Windows系统中历史文件的教程
在Linux下要实现这个使用的命令是find,然后结合计划任务即可,在Windows下也有一个类似的命令——forfiles,常用选项如下:
/p:指定的路径
/s:递归查询
/m:匹配条件
/d:指定日期,如-7指7天前的文件
/c:需要运行的命令,等同find的-exec,命令字符串应该用双引号括起来。默认命令是"cmd /c echo @file"。主要使用以下两个变量:
@file -返回文件名
/p:指定的路径
/s:递归查询
/m:匹配条件
/d:指定日期,如-7指7天前的文件
/c:需要运行的命令,等同find的-exec,命令字符串应该用双引号括起来。默认命令是"cmd /c echo @file"。主要使用以下两个变量:
@file -返回文件名
@path -返回文件的完整路径
示例:
forfiles /p D:\databak\svn\ /d -5 #查找对应目录下超过5天的文件 forfiles /p D:\databak\test\ /d -31 /c "cmd /c if @isdir==TRUE (rmdir /q /s @path) else (del /f @path)" #查找一个月以上的文件,如果是目录的话连同目录一起删除,不是目录的话直接删除只需要把这些命令放入bat脚本,然后创建计划任务执行即可
@echo off forfiles /p D:\databak\svn\ /d -3 /c "cmd /c if @isdir==TRUE (rmdir /q /s @path)"
版权声明:本文章版权归数据库运维网(www.ywdba.cn)所有。如需引用本站内容,请注明来源及作者。
评论