nevermind123

Momentanes Datum mit Datum aus Log File vergleichen und auf Bedingung löschen

hallo leute,

ich habe ein problem und hoffe jmnd kann mir weiter helfen, hier mal ein bisschen beschreibung:

ein server führt eine datensicherung durch, und speichert daraufhin in einem logfile einen bestätigungsstring mit datum/uhrzeit, wenn die datensciherung erfolgreich durchgeführt wurde.

nun habe ich einen ordner mit dateien, der auf vollzogener datensicherung geleert werden soll.

vorgestellt hab ich mir das folgendermaßen: timestamp im logfile und momentanes datum/uhrzeit wird verglichen..sagen wir um 23uhr jeden abend führt der server die datensicherung durch, und um 9uhr wird die batch datei jeden morgen ausgeführt, wird überprüft, ob in den letzten 10 std ein string gespeichert wurde. daraufhin kann der ordner geleert werden, findet die batch datei ncihts, wird nichts gemacht.

habe mir das ganze ein bisschen einfacher vorgestellt, komme aber nicht so wirklich in die batch geschichte rein. über suche konnte ich auch nichts genaues finden. würde mich freuen, wenn mir da jmnd weiter helfen könnte.

vielen dank im voraus!

gruß
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 111115

Url: https://administrator.de/forum/momentanes-datum-mit-datum-aus-log-file-vergleichen-und-auf-bedingung-loeschen-111115.html

Ausgedruckt am: 30.04.2025 um 22:04 Uhr

bastla
bastla 14.03.2009 um 17:08:08 Uhr
Goto Top
Hallo nevermind123 und (etwas verspätet) willkommen im Forum!

Könntest Du bitte das Logfile (bzw speziell den "Bestätigungsstring") etwas genauer beschreiben?

Grüße
bastla
nevermind123
nevermind123 16.03.2009 um 16:11:12 Uhr
Goto Top
hi,

hier mal ein string der datei:

bdzyhqct and 2009-02-17 16.04.31 0000-00-00 00.00.00 6 0.0000:0 27 0 0 2870 31587178 0 0 ALL online disk a--k-c 7.00 (38)


dort, wo "0000-00-00 00.00.00" steht, wird nach datensicherung der zeitpunkt festgehalten

vielen dank im voraus
bastla
bastla 16.03.2009 um 19:31:03 Uhr
Goto Top
Hallo nevermind123!

Weitere Fragen:
Wie ist dieser String innerhalb der Datei zu finden (immer gleiche Zeile, Erkennungsmerkmal)?
Geprüft werden soll also, ob der String existiert, und wenn ja, einen Zeitpunkt angibt, der weniger als 10 Stunden zurück liegt?

Grüße
bastla
nevermind123
nevermind123 17.03.2009 um 08:32:42 Uhr
Goto Top
also es ist eine textdatei, die immer wieder den string von der neuen datensicherung hinten heran hängt..sprich:

1. zeile: 1. datensicherung
2. zeile: 2. datensicherung
3. zeile: 3. datensicherung
usw usw.

ich dachte er sucht einfach genau alle zeilen durch, und sucht das älteste datum? mit diesem vergleicht er das jetzige datum und checkt ob es länger als 10 stunden zurück liegt.

wäre sowas in der richtung möglich?

danke im voraus
bastla
bastla 17.03.2009 um 08:55:33 Uhr
Goto Top
Hallo nevermind123!

Wäre nicht eher das jüngste Datum zu suchen und dann zu prüfen, ob es innerhalb der letzten 10 Stunden liegt (zumindest, wenn tatsächlich ein fortlaufendes Log geführt wird, wäre das älteste Datum doch sicher älter als 10 Stunden)?

Wenn ja, müsste es genügen, die letzte Zeile zu betrachten (da ja immer am Ende angefügt wird) ...

Grüße
bastla
nevermind123
nevermind123 17.03.2009 um 09:02:17 Uhr
Goto Top
ja richtig, habe mich da ein wenig fehlerhaft ausgedrückt :D

das jüngste natürlich!
bastla
bastla 17.03.2009 um 18:48:10 Uhr
Goto Top
Hallo nevermind123!

Etwas zum Testen:
@echo off & setlocal
set "Log=D:\Backups\log.txt"  
set "St=-10"  

set G=%temp%\GetTimeXHoursAgo.vbs
>%G%  echo Set a=WScript.Arguments:T=DateAdd("h",a(0),a(1))  
>>%G% echo WScript.Echo Mid(T,7,4)^&"-"^&Mid(T,4,2)^&"-"^&Left(T,2)^&Replace(Mid(T,11),":",".")  

for /f "usebackq tokens=5,6" %%i in ("%Log%") do set "ZeitBack=%%i %%j"  
for /f "delims=" %%i in ('cscript //nologo %G% %St% "%date% %time:~,8%"') do set "ZeitVergl=%%i"  

if "%ZeitBack%" gtr "%ZeitVergl%" echo Aktuelle Sicherung gefunden: %ZeitBack%  
Die gewünschte Stundenanzahl ist in Zeile 3 festzulegen, wobei für "vor 10 Stunden" ein negativer Wert zu verwenden ist.

Grüße
bastla