bat删除过期文件(FORFILES)
关键词:bat删除过期文件,bat,FORFILES 原文:https://blog.csdn.net/sandy9919/article/details/82932460 --最佳实践 :: IIS日志文件目录 set log_dir="C:inetpublogsLogFiles" :: 保留日志天数 set bak_dat=15 :: 删除日志文件 forfiles /p %log_dir% /S /M *.log /D -%bak_dat% /C "cmd /c echo 正在删除@relpath 文件… & echo. & del @file" ? ? FORFILES 该forfiles命令最初作为加载项提供在Windows NT?资源工具包中。它成为Windows Vista的标准实用程序,作为新管理功能的一部分。 用法 forfiles命令有几个命令行选项。如果没有给出选项或参数,它将输出当前目录中每个文件的名称。 开关 论据 含义 / S (没有) 选择子目录中的匹配文件。默认情况下,仅搜索单个指定目录。 除非如下所述,否则命令字符串按给定的方式执行。 形式的序列0xFF,其中“0x”是文字,“FF”表示任何两位十六进制数,用相应的单字节值替换。这可用于嵌入非打印ASCII字符或扩展ASCII字符。 提供了几个变量,在命令中用作来自每个文件的值的占位符。从技术上讲,变量不是必需的,但如果每个文件的命令都不同,则必须使用变量。 变量 含义 在给定日期参数的情况下,日期开关(/ D)根据上次修改日期选择文件。 date参数可以作为文字日期给出,格式为MM / DD / YYYY(不接受其他日期格式)。可替代地,日期参数可以被给定为一个数字,在这种情况下,它被认为是指在日龄时(即,天日期当前日期的前几天)。 如果date参数以减号( - )开头,则仅选择在给定日期或之前修改的文件(较旧的文件/先前修改过)。否则,仅选择在给定日期或之后修改的文件(较年轻的文件/稍后修改)。可以给出显式加号(+),但这是默认值。请注意,两种模式都在给定日期选择文件。无法仅在给定日期选择文件(也不在之前或之后)。 示例 要列出驱动器 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?[email?protected]" 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?[email?protected]" 删除D:db_bak目录下20天之前的rar文件,请键入: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |