kurby12
Goto Top

nach Dateien im Ordner suchen und diese nach Datum vergleichen

Hallo zusammen,

ich habe mich in diesem Forum bereits durch geschaut. Es gibt hier tolle Beispiele und Helfer. Ich habe da jetzt ein Problem.

Ich habe eine Excel Datei was mit einer Batch datei täglich in einer bestimmten Uhrzeit aufgerufen wird. Zuvor erstellt die Batch 12 TXT-Files und dann öffnet es die Excel Datei und fügt die Inhalte der 12 TXT Dateien in die Excel Dateien ein. Jetzt möchte ich nur noch testen ob das alle auch wirklich abläuft. Es gibt bestimmt x-Möglichkeiten dies zu kontrollieren.

Gibt es da eine Möglchkeit mit einer BATCH-DAtei zu vergleichen?
Toll wäre es wenn die Batch-Datei in den Ordner reingeht und das Erstellungdsdatum von den TXT-Files mit den Aktuellem Datum vergleicht. Wenn das Stimmt soll es mir in einer Text Datei das Ergebnis ausgeben.

Kann mir hierbei geholfen werden
Gruss

Content-Key: 23763

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

Printed on: April 24, 2024 at 08:04 o'clock

Mitglied: 22736
22736 Jan 17, 2006 at 21:11:51 (UTC)
Goto Top
Guten Abend.

Ja, man kann das Erstellungsdatum mit dem aktuellen Datum vergleichen. Die erweiterte Ersetzung von Verweisen auf FOR-Variablen ermöglicht dies (siehe auch FOR /?).

For %%F In (*.txt) Do (
  For /F %%D In ("%%~tF") Do (  
    If "%%D"=="%DATE%" (  
      Echo %%F ist von heute.
    ) Else (
      Echo %%F ist nicht von heute.
    )
  )
)
Member: Biber
Biber Jan 19, 2006 at 19:33:39 (UTC)
Goto Top
Auch Guten Abend (etwas verspätet),

sollte man/frau mit der erweiterten Ersetzung von Verweisen Startschwierigkeiten haben,
geht es zur Not auch ohne:
::--- snipp TxtVonheute.bat
@For /F "tokens=4" %%i in ('dir /n *.txt^|find "%date%  "') do @Echo Von Heute: %%i  
::--- snapp TxtVonHeute.bat

Hierbei wird ein DIR-Output der Form:
18.01.2006 17:33 324 TextiA.txt
19.01.2006 19:52 30 dummydatei.txt
...
...nach dem Suchstring "%date% " (="19.01.2006 ") zeilenweise gefiltert und
...von dieser Zeile das vierte Token (1=Datum,2=Zeit, 3=Größe, 4=Dateiname) verwertet.

@senay
Zum Schreiben in eine Datei in beiden Beispielen umleiten des Outputs mit ">" in eine Datei.

Also z.B.
$cmd$ TxtVonheute.bat > d:\archiv\NeueTexte.lst

Grüße Biber