2013-07-27 45 views
0

批处理命令将检查一个文件的修改日期。如果修改日期等于当前日期,那么它会通过创建当前日期的文件夹将文件复制到不同的位置。 我用下面的代码:当修改日期与当前日期相同时,批命令复制文件

@echo off 
set currentDate=%date% 
SET filename="C:\Documents and Settings\302444\Desktop\inventory.txt" 
FOR %%X IN (%filename%) DO SET filedatetime=%%~tX 
pause 

if %filedatetime:~0, 10% == %currentDate% 
pause 
(ROBOCOPY C:\Documents and Settings\302444\Desktop C:\Documents and Settings\302444\Desktop\IMP\%date:~-4,4%%date:~-10,2%%date:~-7,2% inventory.txt 
pause 
) 

if %filedatetime:~0, 10% LSS %currentDate% 
(echo file not updated 
pause 
) 

但如果语句不是在这里工作。请指教我一样

+0

07/27/2013是日期格式.. mm/dd/yyyy – Debopam

+0

如果我使用set currentDate =%date:〜-10,2%/%date:〜-7,2%/%date:〜 -4,4%然后它也没有工作。请帮帮我 – Debopam

回答

0

我得到了答案。

  1. “” 不会在那里和括号将从同一行的若像下面开始:

如果%filedatetime:〜0,10%==%的currentdate%(ROBOCOPY C: \ Documents and Settings \ 302444 \ Desktop C:\ Documents and Settings \ 302444 \ Desktop \ IMP \%date:〜-4,4 %% date:〜-10,2 %% date:〜-7,2%inventory。 TXT

  1. ,也将当前日期设置为

currentdate =%date:〜-10%。

它正在工作。谢谢你的时间 。