2011-10-13 51 views
1
@echo off 
forfiles /p "C:\Documents and Settings\Test\Downloads" /d +01/07/2011 /d -15/07/2011 /c "cmd /c echo @file" 
pause 

你好之间选择文件,两个日期

我想选择01/07/11和15/07/11(法国之间修改的所有文件:JJ/MM/AAAA或美国:DD /月/年)。但是“/ d”参数只能使用一次。我怎样才能做到这一点 ?

谢谢,如果你能帮助我。 :)

回答

2

这不是该特定命令的选项。您可以将选择用作FOR循环的输入。为您需要的每个标准添加另一个缩进。

FOR /F "delims=*" %%A IN ('forfiles /d -05/07/2011') DO (
    FOR /F "delims=*" %%B IN ('forfiles /m %%A /d +05/01/2011') DO (
     ECHO %%B 
    ) 
) 
+0

它的工作。我有什么修改不打印几个“错误:找不到文件...”? 我必须在500.000以上的文件夹中启动这个脚本,它看起来非常慢。第二个'for'可以替换为'if'吗?我认为它会更加优化。 – pihug12

+0

“非常慢”可能是您系统的性能,或者可能意味着“未优化”。最好的做法是使用像Visual Basic或C#这样的编程语言来创建一个编译好的可执行文件。这将会非常优化。 – positivesigner