Windows删除指定时间之前指定后缀名的文件

Windows删除指定时间之前指定后缀名的文件,第1张

时间判定标准:文件创建时间

实例:删除 E:\easbak 目录下(包括子文件夹),5天前 “.dmp”后缀名的文件及后缀名为 “*.log” 的文件

批处理:

rem 关于自动删除当前日期的文件的功能的实现

cls

title YIPINGSOFT CopyRight2006

rem "===================================================="

for /r 最新文件\ %%a in (.) do del/q %%a\*.*

del 最新文件目录.txt

Del 备查目录.txt

Del 完整目录.txt

set homes=%date%

date/t >>完整目录.txt

for /F %%A in (完整目录.txt) do set homes=%%A

dir /t:c /s>完整目录.txt

for /f "tokens=1,4* delims= " %%1 in (完整目录.txt) do for /r %%a in (%%2*) do if %%1==%homes% echo %%~fa >>最新文件目录.txt

For /r %%i in (*.*) DO echo %%~fi >>备查目录.txt

For /r %%i in (.) DO copy 最新文件目录.txt %%i\

for /f %%b in (最新文件目录.txt) do del %%b

rem 奕平软件工作室 YIPINGSOFT CopyRight2006

用XP 2000的for命令/f/r开关的批处理(要求只需一段语句处理一次),可删除指定日期和时间(一般以创建时间为据较实用,如要以修改时间为据,可去掉 /t:c 开关)的目录和文件(包括带空格的长文件名).

1-A

以下是删除e根目录下2004年2月23号创建的目录或文件

@echo off

dir e: /t:c>e:\finddate.txt

for /f "tokens=1,4* delims= " %%1 in (e:\finddate.txt) do if %%1==2004-02-23 deltree /y e:\"%%2*"

1-B

以下是删除e目录下2004年2月23号创建的文件,所有子目录及其文件,如下:

@echo off

dir e: /t:c /s>e:\finddate.txt

for /f "tokens=1,4* delims= " %%1 in (e:\finddate.txt) do for /r e: %%a in ("%%2*" do if %%1==2004-02-23 deltree %%a

(注意了!当程序窗口给出将要删的目录或文件名要你确认时,你一定要看清楚了它的具体路径,是不是你要删的那个,否则文件时间不同的另外的同名目录或文件也将被删!

如果确定可删或不存在文件时间不同的另外的同名目录或文件,就可在deltree后加上/y参数.

如果一定要仅仅删指定时间的目录或文件,就有点复杂了,倒不如分几步走,但最后还要你一个一个找出来的。以上的批处理虽然也要你一个一个确认,但只要一段语句。

如有人能用字数差不多的一段语句实现仅仅删除指定时间的目录或文件,赶快贴上来吧!

真希望微软或有人设计增加象xcopy那样的时间参数,那就方便了!)

*******************************************

如果要精确到几点几分,

2-A

要删除e根目录下2004年2月23号15点31分创建的目录或文件,如下:

@echo off

dir e: /t:c>e:\findtime.txt

for /f "tokens=1,2,4* delims= " %%1 in (e:\findtime.txt) do if %%1%%2==2004-02-2315:31 deltree /y e:\"%%3*"

2-B

如要删除e目录下2004年2月23号15点31分创建的文件,所有子目录及其文件,

如下:

@echo off

dir e: /t:c>e:\findtime.txt

for /f "tokens=1,2,4* delims= " %%1 in (e:\findtime.txt) do for /r e: %%a in ("%%3*" do if %%1%%2==2004-02-2315:31 deltree %%a

(注意了!当程序窗口给出将要删的目录或文件名要你确认时,你一定要看清楚了它的具体路径,是不是你要删的那个,否则文件时间不同的另外的同名目录或文件也将被删!

如果确定可删或不存在文件时间不同的另外的同名目录或文件,就可在deltree后加上/y参数.

如果一定要仅仅删指定时间的目录或文件,就有点复杂了,倒不如分几步走,但最后还要你一个一个找出来的。以上的批处理虽然也要你一个一个确认,但只要一段语句。

如有人能用字数差不多的一段语句实现仅仅删除指定时间的目录或文件,赶快贴上来吧!

真希望微软或有人设计增加象xcopy那样的时间参数,那就方便了!)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8121147.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存