[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 求一个bat文件,删除某年某月前的文件

求一个bat文件,删除某年某月前的文件(如rar等)

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

回复 1# CGQNET
以文件创建日期还是最后修改日期为准?
是在同一级目录里还是包括子目录?

TOP

本帖最后由 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
复制代码

TOP

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

是这样的:硬盘经常下载东西,用后便是垃圾,我想删除的这是这些垃圾,比如这些垃圾创建后一年便要删除。
包括子目录里的垃圾,如d:盘及其子目录。谢谢!

TOP

回复 5# CGQNET


    3楼的代码测试之后没有任何效果吗

TOP

回复 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

再者没见子目录的文件。

TOP

返回列表