其他分享
首页 > 其他分享> > 【转】系统创建定时执行任务bat批处理删除指定N天前文件夹的文件

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

作者:互联网

原文链接:https://blog.csdn.net/scholar_man/article/details/80702499

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

@echo off  
echo 删除7天前的.dmp文件和日志  
  
forfiles /p "D:\backup" /m *.dmp /d -7 /c "cmd /c del @path"  
forfiles /p "D:\backup" /m *.log /d -7 /c "cmd /c del @path"  
  
echo 正在执行逻辑删除,请稍等……  
pause  
echo 任务完成!  

下面是创建删除七天前D盘backup目录下的所有文件

@echo off  
echo 删除7天前所有的文件 
  
forfiles /p "D:\backup" /s /m *.* /d -7 /c "cmd /c del @path"  
 
echo 正在执行逻辑删除,请稍等……  
pause  
echo 任务完成!  

将以上其中一行复制,新建.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分钟自动清理一次

 

标签:返回,文件,bat,删除,批处理,echo,任务,天前,backup
来源: https://www.cnblogs.com/Violety/p/13867576.html