bat删除指定时间之前文件

时间:2022-07-10 07:56:15
@echo off
echo 删除n天前的备分文件和日志

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 任务完成!

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


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