2011-10-13 99 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