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

艺帆风顺 发布于 2025-04-02 16 次阅读


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

  1. @echo off  

  2. echo 删除7天前的.dmp文件和日志  

  3.   

  4. forfiles /p "D:backup" /m *.dmp /d -7 /c "cmd /c del @path"  

  5. forfiles /p "D:backup" /m *.log /d -7 /c "cmd /c del @path"  

  6.   

  7. echo 正在执行逻辑删除,请稍等……  

  8. pause  

  9. echo 任务完成!  

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

  1. @echo off  

  2. echo 删除7天前所有的文件 

  3.   

  4. forfiles /p "D:backup" /s /m *.* /d -7 /c "cmd /c del @path"  

  5.  

  6. echo 正在执行逻辑删除,请稍等……  

  7. pause  

  8. 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分钟自动清理一次

    版权声明:本文内容来自CSDN:月轩居士,遵循CC 4.0 BY-SA版权协议上原文接及本声明。本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行可。原文链接:https://blog.csdn.net/scholar_man/article/details/80702499如有涉及到侵权,请联系,将立即予以删除处理。在此特别鸣谢原作者的创作。此篇文章的所有版权归原作者所有,与本公众号无关,商业转载建议请联系原作者,非商业转载请注明出处。