系统创建定时执行任务bat批处理删除指定N天前文件夹的文件

首先我们要创建一个.bat的文件,下面是创建删除几天前D盘backup目录下的文件

@echo off
echo Delete 3month ago files

forfiles /p "E:\backup\pdf_files" /s /m *.pdf /d -90 /c "cmd /c del @path"
forfiles /p "E:\backup\reportFile" /s /m *.pdf /d -90 /c "cmd /c del @path"
forfiles /p "E:\backup\EmailFiles" /s /m *.pdf /d -90 /c "cmd /c del @path"
forfiles /p "E:\backup\EmailFiles" /s /m *.txt /d -90 /c "cmd /c del @path"

forfiles /p "E:\backup\pdf_files" /s /m *.pdf /d -90 /c "cmd /c del @path"
forfiles /p "E:\backup\reportFile" /s /m *.pdf /d -90 /c "cmd /c del @path"
forfiles /p "E:\backup\EmailFiles" /s /m *.pdf /d -90 /c "cmd /c del @path"
forfiles /p "E:\backup\EmailFiles" /s /m *.txt /d -90 /c "cmd /c del @path"

echo Deleting files, please waiting...

将以上其中一行复制,新建.txt文本文件,粘贴并保存为.bat格式

说明:

/p 指定的路径
/s 包括子目录
/m 查找的文件名掩码
/d 指定日期,有绝对日期和相对日期, 此处-7指当前日期 的7天前

/c 运行的命令行  表示为每个文件执行的命令。命令字符串应该
用双引号括起来。
默认命令是 “cmd /c echo @file”。下列变量可以用在命令字符串中:
@file    – 返回文件名。
@fname   – 返回不带扩展名的文件名。
@ext     – 只返回文件的扩展。
@path    – 返回文件的完整路径。
@relpath – 返回文件的相对路径。
@isdir   – 如果文件类型是目录,返回 “TRUE”;如果是文件,返回 “FALSE”。
@fsize   – 以字节为单位返回文件大小。
@fdate   – 返回文件上一次修改的日期。
@ftime   – 返回文件上一次修改的时间

然后我们要让这个.bat文件按照指定的日期自动重复执行

1.打开扫描件所存放的服务器,点“开始”——“附件”——“系统工具”——“任务计划程序”;

2.打开之后,右击“任务计划程序”——“创建基本任务”;

3.输入基本任务名称,我定义的是“定时清理扫描件;

4.希望该任务何时开始,选择“每天”如下图设置

5.选择“启动程序”,如下图设置

6.将编写的脚本文件添加进来,如下图设置

7.配置完成

8.设置清理间隔时间,如下图,可以看到新创建的计划任务,右击——“属性”

9.选择“触发器”,并新建一个触发器

10.选择编辑触发器,如下图设置,我设置的是定时每5分钟自动清理一次

引用:https://blog.csdn.net/scholar_man/article/details/80702499

 

滚动至顶部