bankaifan
Goto Top

Alle Dateien, die jünger sind als ein bestimmtes Datum anzeigen

Ich möchte alle Dateien, die seit dem Tag x bearbeitet wurden, in eine Textdatei schreiben. (In meinem Beispiel seit dem 05.09.2011)

set MYDATE=20110905
For /R %%F In (*) Do 
(
  For /F %%D In ("%%~tF") Do   
  (
	set datum=%%D
	set moddate=%datum:~6,4%%datum:~3,2%%datum:~0,2%
	If "%moddate%"GTR"%MYDATE%" (  
      		Echo %%~nF ist von heute. >> output.txt 
	)  Else (
      		Echo %%~nF ist nicht von heute.
	)
  )
)
pause>nul

Irgendwo muss ich da aber noch paar denkfehler haben. Ich bekomme den Inhalt von %%D einfach nicht in %datum%...
Und das
If "%moddate%"GTR"%MYDATE%"   
scheint auch nicht zu funktionieren...

Hoffe ihr könnt mir weiterhelfen.

Grüße

bankaifan

Content-Key: 174925

Url: https://administrator.de/contentid/174925

Printed on: May 23, 2024 at 12:05 o'clock

Member: pieh-ejdsch
pieh-ejdsch Oct 19, 2011 at 11:57:40 (UTC)
Goto Top
moin bankaifan,

soweit mydate tatsächlich heute sein würde, müsste die zweite ForSchleife in etwa
for /f "tokens=1-3 delims=. " %%D in ("%%~tF") do if %%F%%E%%D equ %mydate% (echo %%~nF ist von Heute.  
) >>output.txt else echo %%~nF ist nicht von Heute
lauten.
in einer Schleifenklammer muss eine !Variable! mit delayedexpansion aufgelöst werden.

Gruß Phil
Member: bankaifan
bankaifan Oct 24, 2011 at 07:53:19 (UTC)
Goto Top
Hat geklappt. Danke face-smile

LG

Bankaifan