Board logo

标题: [文件操作] 求一个bat文件,删除某年某月前的文件 [打印本页]

作者: CGQNET    时间: 2015-3-26 20:44     标题: 求一个bat文件,删除某年某月前的文件

求一个bat文件,删除某年某月前的文件(如rar等)
作者: pcl_test    时间: 2015-3-26 20:51

本帖最后由 pcl_test 于 2015-3-26 20:52 编辑

回复 1# CGQNET
以文件创建日期还是最后修改日期为准?
是在同一级目录里还是包括子目录?
作者: cobat    时间: 2015-3-26 21:19

本帖最后由 cobat 于 2015-3-26 22:04 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=1,3*" %%a in ('dir/a-d/od') do (
  4.     set "var=%%a"
  5.     if "%%c" neq "%~nx0" if "!var:/=!" neq "!var!" (
  6.         if !var:/^=! geq 20150301 (pause&exit) else del "%%c"
  7.     )
  8. )
  9. pause
复制代码

作者: Batcher    时间: 2015-3-26 21:32

http://bbs.bathome.net/thread-3334-1-1.html
这样可以吗
作者: CGQNET    时间: 2015-3-28 22:26

是这样的:硬盘经常下载东西,用后便是垃圾,我想删除的这是这些垃圾,比如这些垃圾创建后一年便要删除。
包括子目录里的垃圾,如d:盘及其子目录。谢谢!
作者: DAIC    时间: 2015-3-28 22:31

回复 5# CGQNET


    3楼的代码测试之后没有任何效果吗
作者: CGQNET    时间: 2015-3-28 22:54

回复 6# DAIC

试了,好像日期不对,我把日期改后如下:
@echo off
setlocal enabledelayedexpansion
for /f "tokens=1,3*" %%a in ('dir/a-d/od') do (
    set "var=%%a"
    if "%%c" neq "%~nx0" if "!var:/=!" neq "!var!" (
        if !var:/^=! geq 20150327 (pause&exit) else echo "%%c"
    )
)
pause

再者没见子目录的文件。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2