zoukankan      html  css  js  c++  java
  • BAT定期删除N天前的文件

    1.直接看脚本在win2008测试可用

    ::clean logs
    @echo off
    title clean up logs
    
    ::delete logs
    FORFILES /P "D:Logs" /S /M *.log* /D -7 /C "cmd /c echo deleting..@file.. &del @file"
    
    pause

    2.列出几个参考吧,forfiles的版本不一致会导致很多不一样的问题

    forfiles:

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


    /c 运行的命令行   表示为每个文件执行的命令。命令字符串应该
                            用双引号括起来。

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

    示例
    要列出驱动器 C: 上的所有批处理文件,请键入:

    forfiles /p c: /s /m*.bat /c"cmd /c echo @file is a batch file"

    要列出驱动器 C: 上的所有目录,请键入:

    forfiles /p c: /s /m*.* /c"cmd /c if @isdir==true echo @file is a directory"

    要列出驱动器 C: 上存在时间多于 100 天的所有文件,请键入:

    forfiles /p c: /s /m*.* /dt-100 /c"cmd /c echo @file :date >= 100 days"

    要列出驱动器 C: 上 1993 年 1 月 1 日以前创建的所有文件,而且对于日期早于 1993 年 1 月 1 日的文件显示“file is quite old!”,请键入:

    forfiles /p c: /s /m*.* /dt-01011993 /c"cmd /c echo @file is quite old!"

    要按列格式列出驱动器 C: 上所有文件的扩展名,请键入:

    forfiles /p c: /s /m*.* /c "cmd /c echo extension of @file is 0x09@ext0x09" With:

    要列出驱动器 C: 上的所有批处理文件,请键入:

    forfiles /p c: /s /m *.bat /c "cmd /c echo @file is a batch file"

    要列出驱动器 C: 上的所有目录,请键入:

    forfiles /p c: /s /m *.* /c "cmd /c if @isdir==true echo @file is a directory"

    要列出驱动器 C: 上存在时间多于 100 天的所有文件,请键入:

    forfiles /p c: /s /m *.* /d t-100 /c "cmd /c echo @file :date >= 100 days"

    要列出驱动器 C: 上 1993 年 1 月 1 日以前创建的所有文件,而且对于日期早于 1993 年 1 月 1 日的文件显示“file is quite old!”,请键入:

    forfiles /p c: /s /m *.* /d t-01011993 /c "cmd /c echo @file is quite old!"

    要按列格式列出驱动器 C: 上所有文件的扩展名,请键入:

    forfiles /p c: /s /m*.* /c "cmd /c echo extension of @file is 0x09@ext0x09"

  • 相关阅读:
    iphone 拨打电话的 两种方法-备
    vi编辑器经典技巧 -备
    iOS图片压缩问题
    NSStirng、NSArray、以及枚举(Method小集合)
    宏定义 button 方法 --备
    debug 输出 以及宏定义--备
    从别人写的 Object-C 中 Singleton (单例) 模式 中的一些理解--备
    makefile编写---.c .cpp 混合编译makefile 模板
    图像处理之基础---线性卷积和循环卷积的区别
    图像处理之基础---卷积去噪
  • 原文地址:https://www.cnblogs.com/oskb/p/9467264.html
Copyright © 2011-2022 走看看