实例:删除 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那样的时间参数,那就方便了!)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)