
65883
25.08.2011, aktualisiert am 30.09.2011
Per Batch Datei mit Datum protokollieren
Hallo,
ich sitze hier an meinem Arbeitsplatz-PC. Meine Access-Projekte starte ich manuell bei Bedarf. Das Ende meiner täglichen Arbeitszeit endet offiziell mit der zuletzt geschlossenen *.mdb.
Beim PC-Start am nächsten Tag möchte ich mittels einer Batch-Datei im Autostart-Ordner die Dateiname und Uhrzeit aller (momentan 3) *.mdb in eine txt-Datei hinzuprotokollieren lassen, um eine Übersicht zu erhalten, wann jeweils immer am Vortag die letzte Datenbank geschlossen wurde.
Bsp.
c:\Projekt_2\Projekt_2.mdb
c:\Projekt_3\Projekt_3.mdb
<Protokoll.txt>
Projekt_1 - 2011-08-15 16:30:00
Projekt_2 - 2011-08-15 15:00:00
Projekt_3 - 2011-08-15 13:45:00
Projekt_1 - 2011-08-14 12:30:00
Projekt_2 - 2011-08-14 17:10:00
Projekt_3 - 2011-08-14 10:15:00
usw...
Könnte mir da jemand bitte helfen, ich steh leider komplett auf dem Schlauch.
ich sitze hier an meinem Arbeitsplatz-PC. Meine Access-Projekte starte ich manuell bei Bedarf. Das Ende meiner täglichen Arbeitszeit endet offiziell mit der zuletzt geschlossenen *.mdb.
Beim PC-Start am nächsten Tag möchte ich mittels einer Batch-Datei im Autostart-Ordner die Dateiname und Uhrzeit aller (momentan 3) *.mdb in eine txt-Datei hinzuprotokollieren lassen, um eine Übersicht zu erhalten, wann jeweils immer am Vortag die letzte Datenbank geschlossen wurde.
Bsp.
Pfad>
c:\Projekt_1\Projekt_1.mdbc:\Projekt_2\Projekt_2.mdb
c:\Projekt_3\Projekt_3.mdb
<Protokoll.txt>
Projekt_1 - 2011-08-15 16:30:00
Projekt_2 - 2011-08-15 15:00:00
Projekt_3 - 2011-08-15 13:45:00
Projekt_1 - 2011-08-14 12:30:00
Projekt_2 - 2011-08-14 17:10:00
Projekt_3 - 2011-08-14 10:15:00
usw...
Könnte mir da jemand bitte helfen, ich steh leider komplett auf dem Schlauch.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Kommentar vom Moderator Biber am 30.09.2011 um 09:44:30 Uhr
Nach dem Ersteller-Kommentar vom 30.9.2011 auf "Erledigt" gesetzt.
Content-ID: 172052
Url: https://administrator.de/forum/per-batch-datei-mit-datum-protokollieren-172052.html
Ausgedruckt am: 11.04.2025 um 21:04 Uhr
23 Kommentare
Neuester Kommentar
Hallo truecolor!
Ungetestet etwa so:
Grüße
bastla
Ungetestet etwa so:
@echo off & setlocal
set "Log=D:\Protokoll.txt"
for %%i in ("c:\Projekt_1\Projekt_1.mdb" "c:\Projekt_2\Projekt_2.mdb" "c:\Projekt_2\Projekt_1.mdb") do call :ProcessFile "%%~i"
>>"%Log%" echo\
goto :eof
:ProcessFile
for /f "tokens=1-4 delims=. " %%a in ("%~t1") do set "Zeit=%%c-%%b-%%a %%d"
>>"%Log%" echo %~n1 - %Zeit%
goto :eof
bastla
Aloha,
nun beispielsweise würde dies so funktionieren:
Ich gehe mal davon aus, dass die Projekte noch einen sinnvollen Elternordner haben und nicht direkt auf C:\ liegen, sonst wird jede .mdb in C:\ dort aufgelistet und ich gehe davon aus, dass nur in dem besagten Pfad in den Projektordnern .mdb liegen, wenn dem nicht so sein sollte, gib' einfach eine Rückmeldung.
greetz André
nun beispielsweise würde dies so funktionieren:
@echo off & setlocal
set "Pfad=E:\Test"
set "LOG=E:\Protokoll.txt"
for /r "%Pfad%" %%s in (*.mdb) do (
for /f "tokens=1-3,* delims=. " %%m in ("%%~ts") do >>"%LOG%" echo %%~ns - %%o-%%n-%%m %%p
)
pause
goto :eof
Ich gehe mal davon aus, dass die Projekte noch einen sinnvollen Elternordner haben und nicht direkt auf C:\ liegen, sonst wird jede .mdb in C:\ dort aufgelistet und ich gehe davon aus, dass nur in dem besagten Pfad in den Projektordnern .mdb liegen, wenn dem nicht so sein sollte, gib' einfach eine Rückmeldung.
greetz André
[OT]
Hey Jungs,

meine Erfahrungswerte liegen noch unter 100.
Dank der vielen Anleitungen bin ich ja froh, dass ich so etwas überhaupt ansatzweise lösen kann.
Gelobe Besserung!
[/OT]
Gruß
Markus
Hey Jungs,
entspricht jedoch nicht den Anforderungen
habe ich von Microsoft abgekupfert - so ist immer noch Luft für ein Update meine Erfahrungswerte liegen noch unter 100.
Dank der vielen Anleitungen bin ich ja froh, dass ich so etwas überhaupt ansatzweise lösen kann.
Gelobe Besserung!
[/OT]
Gruß
Markus
[OT]
@bastla / André

Gruß
Markus
[/OT]
@bastla / André
Ist doch nur Spassss
Ich weiß doch. Aber selbst das hilft schon weiter Gruß
Markus
[/OT]
[OT]
Der hat's gut... nie wieder Montag morgens aufstehen....
Grüße
Biber
[/OT]
Zitat von @Skyemugen:
> Zitat von @65883:
> ----
> morgen früh, wenn die Generalprobe erfolgreich bestanden wurde, setzte ich auf gerne auf gelöst
Vielleicht war ja auch die Generalprobe nicht ganz so erfolgreich und truecolor stand schon heute früh um 8:25 mit einer schwarzen Augenbinde an der Nord-Ost-Mauer des innenhofs.> Zitat von @65883:
> ----
> morgen früh, wenn die Generalprobe erfolgreich bestanden wurde, setzte ich auf gerne auf gelöst
Der hat's gut... nie wieder Montag morgens aufstehen....
Grüße
Biber
[/OT]
Hallo truecolor!
Ändere die Zeile 9 auf
- damit wird das Erstellungsdatum abgefragt. Die weiteren Möglichkeiten wären "
Grüße
bastla
Ändere die Zeile 9 auf
for /f "delims=" %%f in ('dir /tc %1^|findstr /i "%~nx1"') do for /f "tokens=1-4 delims=. " %%a in ("%%f") do set "Zeit=%%c-%%b-%%a %%d"
dir /tw
" für Änderungsdatum (ist aber einerseits ohnehin Default und andererseits mit der ersten Batchversion einfacher zu haben) und "dir /ta
" (Zugriffsdatum) - alles nachzulesen mit "dir /?
" ...Grüße
bastla
Zitat von @65883:
Gruß ... tc
Gruß ... tc
[OT]@bastla, Zufall oder stecken die Illuminaten dahinter?
Moin truecolor,
Oder "Wake me up before september ends"?
ich weiss auch nicht, wie ich jetzt darauf komme...
A propos "weiss" - kann jetzt die Farbe des "Erledigt"-Häkchens angepasst werden?
Grüße
Biber
Zitat von @65883:
morgen früh, wenn die Generalprobe erfolgreich bestanden wurde, setzte ich auf gerne auf gelöst
Sagt dir die Songzeile "If morning never comes" etwas?morgen früh, wenn die Generalprobe erfolgreich bestanden wurde, setzte ich auf gerne auf gelöst
Oder "Wake me up before september ends"?
ich weiss auch nicht, wie ich jetzt darauf komme...
A propos "weiss" - kann jetzt die Farbe des "Erledigt"-Häkchens angepasst werden?
Grüße
Biber
Hallo truecolor!
Sorry - kann ich nicht nachvollziehen.
Als Demo mit Bildschirmausgabe sowohl von Änderungs- als auch Erstellungszeit (und Eintrag in das Logfile mit Erstellungszeit):
Wenn das dann bei Dir auch vernünftig aussieht, kannst Du die Zeilen 6, 10, 11, 13 und 14 wieder entsorgen (oder zumindest durch das Voranstellen von
Grüße
bastla
Sorry - kann ich nicht nachvollziehen.
Als Demo mit Bildschirmausgabe sowohl von Änderungs- als auch Erstellungszeit (und Eintrag in das Logfile mit Erstellungszeit):
@echo off & setlocal
set "Log=D:\Protokoll.txt"
for %%i in ("c:\Projekt_1\Projekt_1.mdb" "c:\Projekt_2\Projekt_2.mdb" "c:\Projekt_2\Projekt_1.mdb") do call :ProcessFile "%%~i"
>>"%Log%" echo\
pause
goto :eof
:ProcessFile
for /f "tokens=1-4 delims=. " %%a in ("%~t1") do set "Zeit=%%c-%%b-%%a %%d"
echo Ge„ndert:%~n1 - %Zeit%
for /f "delims=" %%f in ('dir /tc %1^|findstr /i "%~nx1"') do for /f "tokens=1-4 delims=. " %%a in ("%%f") do set "Zeit=%%c-%%b-%%a %%d"
echo Erstellt: %~n1 - %Zeit%
echo\
>>"%Log%" echo %~n1 - %Zeit%
goto :eof
REM
auskommentieren) ...Grüße
bastla
Kommentar truecolor schreibt am 30.09.2011, 08:56:31 Uhr
gerade noch rechtzeitig xD