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

[文件操作] 批处理怎样备份文件名包含指定字符和修改日期和时间在指定的范围的文件?

请教各位老师,如何用批处理实现下面的操作:

假设在'D:\FTP'路径下面每天都会产生许多个扩展名为.rpt的文件,这些文件是系统自动每小时下载到这儿的。如何将满足以下条件的文件复制到'D:\Backup'路径下面?
1、文件名包含指定的字符,如:*stockinventory.rpt
2、文件的修改日期在指定的日期范围内,如:2011-10-01 ~ 2011-10-01
3、只复制上述指定日期范围中指定时间范围的文件,如:03:00 ~ 03:05

回复 1# frankysf
下面代码是适用于win7的dir命令格式的,若为其他系统,请参照修改。
  1. @echo off
  2. for /f "skip=4 tokens=1,2,3*" %%i in ('dir *stockinventory.rpt') do (
  3.   if %%i geq 2011/10/01 if %%i leq 2011/10/01 if %%j geq 03:00 if %%j leq 03:50 copy "%%l" d:\backup\
  4. )
复制代码
看得多说得多,远比不上写得多。

TOP

回复 2# weichenxiehou


    此处建议用扩展参数 t 更加方便,因为它就是专门用来获取文件的修改时间的...
  1. for %%a in (*stockinventory.rpt) do if "%%~ta" lss ....
  2. ::举例
复制代码

TOP

返回列表