欢迎您来到,李雷博客 | PHP博客        登录  |  注册

Windows系统下定时任务bat文件删除指定日期前的文件

更新:2022-10-28 11:20:33
人气:1967
来源:CSDN博主「enjoysummer」
A+

平时备份数据库是用BAT来执行,但时间一久积累的内容多了手动删除很麻烦,就尝试用BAT执行定期删除几天前的数据库文件,网上找到了如下的内容,收藏学习。

@echo off  

::::::::::::::::::::::::::::::::::::::::::::::::
:: 删除指定日期前某文件夹及其子文件夹下所有文件
:: 时间以文件创建时间为参照点
:: 编辑人:sparkle-enjoy
:: 时间:2020年6月11日 17点14分
::::::::::::::::::::::::::::::::::::::::::::::::
REM 指定文件夹路径
set SrcDir=G:\Test-202000611\代码备份
REM 指定天数
set DaysAgo=30
echo 删除n天前所有的文件 %DaysAgo%
forfiles /p "%SrcDir%" /s /m *.* /d -%DaysAgo% /c "cmd /c del @path"  > %SrcDir%\log.txt
echo 正在执行逻辑删除,请稍等……  
pause  
echo 任务完成!

注:如若定时任务执行需要将pause注释掉或删除

相应名词命令符解释:

/p 指定的路径

/s 包括子目录

/m 查找的文件名掩码

/d 指定日期,有绝对日期和相对日期, 此处-7指当前日期 的7天前

/c 运行的命令行 表示为每个文件执行的命令。命令字符串应该

用双引号括起来。

默认命令是 “cmd /c echo @file”。下列变量可以用在命令字符串中:

@file - 返回文件名。

@fname - 返回不带扩展名的文件名。

@ext - 只返回文件的扩展。

@path - 返回文件的完整路径。

@relpath - 返回文件的相对路径。

@isdir - 如果文件类型是目录,返回 “TRUE”;如果是文件,返回 “FALSE”。

@fsize - 以字节为单位返回文件大小。

@fdate - 返回文件上一次修改的日期。

@ftime - 返回文件上一次修改的时间

推荐的文章
# 发表我的评论
  /     /  
# 最近评论
暂时还没有评论,要不要说点什么?
  Ads by Google
  联系博主
Hello,本博客系统采用PHP和MySql开发,程序开发完全是因为个人爱好,是自己纯手写PHP源代码,未采用任何PHP框架!
QQ:858353007   微信号:lileihot123
网站地图
会员服务
关于我们
QQ:858353007
 
广告服务
加我微信
移动端访问
 
 
Copyright © 2014- 2024 www.mdaima.com All Rights Reserved.
李雷博客,专注PHP经验、PHP教程及PHP源代码开源下载分享的PHP博客!   ICP备案号:京ICP备10202169号-4