点击…>1或…>2就可以进入江海明子的博文1或江海明子的博文2
点击页面上的:江海明子的博客或http://blog.sina.com.cn/jshmxyming,
就可以进入我的博客首页。
在百度或SoSo中搜索:如何批处理删除指定目录下指定日期前的文件
就能搜索到:如何批处理删除指定目录下指定日期前的文件_江海明子_新浪博客
如果想快速、方便地删除指定目录下指定日期前的文件,不妨试试下面的方法:
1、在桌面上新建个文本文档,如:新建文本文档.txt。方法是:
在桌面的空白处右击,选择:新建-文本文档,其中包含内容:
@echo off&setlocalenabledelayedexpansion
:: 以下 dz=之后为预定处理某盘某目录(当然也可以是根目录如e:),
:: ds=为预定要保留的天数(可修改,但不要大于28)
set dz=g:temp
setds=7
::取当前系统日期的年、月、日
set dy=�te:~,4%
set dm=�te:~5,2%
set dd=�te:~8,2%
echo 当前是 %dy%年%dm%月�%日
::计算应该删的文件的最新日期
set /a "feb=^!(%dy%%%4)+28"
if "%dy:~2,2%" equ "00" set/a "feb=!feb!-1+^!(%dy:~,2%%%4)"
set/a "dd-=%ds%"
if �% leq 0 (
set n=0
set/a dm-=1
if !dm! equ 0 set/a "dy=%dy%-1,dm=0+12"
for %%a in (31 �b% 31 30 31 30 31 31 30 31 30 31) do (
set/a n=!n!+1
if !n! equ %dm% set/a "dd=!dd!+%%a"
)
)
set/a "ymd=!dy!*10000+!dm!*100+!dd!"
echo 要删除文件的最新日期为%ymd%
echo.
echo 停顿一下看看日期对否,按任意键继续... &pause>nul
::-------逐个提取文件获取日期操作--------
cd/d "%dz%"
for /r . %%b in (*.*) do (
set "ftm=%%~tb"
set/a "fdt=!ftm:~,4!*10000+!ftm:~5,2!*100+!ftm:~8,2!"
if !fdt! leq %ymd% echo 要删文件%%b %%~tb)
::测试成功后将上行中括号前的“echo 要删文件%%b %%~tb”换为“del/q "%%b"”(不包括中文双引号)即可。
echo 完成,按任意键退出...&pause>nul
上述第四行等号后面红色部分是绝对路径,可自定
第五行等号后面绿色的数字是几天前的时间,可自定
一定要照倒数第二行的做,才能真正删除
日期格式必须是yyyy-MM-dd的,设置方法是:
开始-设置-控制面板-区域和语言选项-自定义-日期(短日期格式选:yyyy-MM-dd)-确定。
有::的行只是注释,不执行,也不显示
2、改“新建文本文档.txt”为“删除指定目录下指定日期前的文件.bat”,保存在除桌面和C盘以外的分区上,如:D:删除指定目录下指定日期前的文件.bat。
3、如果想快速、方便地删除指定目录下指定日期前的文件,只要双击“D:删除指定目录下指定日期前的文件.bat”根据提示操作即可。