logdatei automatisch mit aktuellem Datum benennen
Hi @ all,
ich möchte gerne das meine Batch die erzeugte Logdatei nicht mit dem Namen logfile.log benennt sonder immer mit dem aktuellen Datum.
Hier mein bisheriger Code:
@echo off
robocopy "Quellpfad" "Zielpfad" "*.*" /e /s >> logfile.log
Danke im Vorraus
ich möchte gerne das meine Batch die erzeugte Logdatei nicht mit dem Namen logfile.log benennt sonder immer mit dem aktuellen Datum.
Hier mein bisheriger Code:
@echo off
robocopy "Quellpfad" "Zielpfad" "*.*" /e /s >> logfile.log
Danke im Vorraus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 21197
Url: https://administrator.de/forum/logdatei-automatisch-mit-aktuellem-datum-benennen-21197.html
Ausgedruckt am: 23.12.2024 um 02:12 Uhr
6 Kommentare
Neuester Kommentar
Moin,
ich bin mir nicht ganz sicher, aber so sollte es gehen:
(Für W2000/XP):
<tt>
::Die Variable definieren
FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set CDATE=%%c-%%b-%%a
::Der Kopiervorgang
md C:\Logfiles\%cdate%
copy "[Pfad/Deine Datei]" "C:\Logfiles\%cdate%\%cdate%.log"
Pause</tt>
Als letzten Befehl kannst Du auch EXIT nehmen, dann erwartet er keinen Tastendruck mehr zum beenden der Batch.
Gruß, Rene
PS: Den obigen Schnipsel habe ich mir recht schnell "gegoogelt" ? Google ist Dein Freund
ich bin mir nicht ganz sicher, aber so sollte es gehen:
(Für W2000/XP):
<tt>
::Die Variable definieren
FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set CDATE=%%c-%%b-%%a
::Der Kopiervorgang
md C:\Logfiles\%cdate%
copy "[Pfad/Deine Datei]" "C:\Logfiles\%cdate%\%cdate%.log"
Pause</tt>
Als letzten Befehl kannst Du auch EXIT nehmen, dann erwartet er keinen Tastendruck mehr zum beenden der Batch.
Gruß, Rene
PS: Den obigen Schnipsel habe ich mir recht schnell "gegoogelt" ? Google ist Dein Freund
Freude
Moin efL0r und Rene,
nur als Fußnote - schön, dass es auf Anhieb geklappt hat, passt auch in 85% der Fälle.
Wenn nämlich %date% als "TT.MM.JJJJ" zurückkommt.
Wenn es auch passen soll, wenn das angezeigte (deutsche) Datumsform einen Wochentag beinhaltet, dann:
Set MyDateOhneDoW=%date%
:: Die nächste Code-Zeile ändert nur dann etwas, wenn ein Wochentag mitgeliefert wird.
:: Aus "Sa 01.10.2005" wird dann "01.10.2005"
FOR /F "tokens=2" %%i in ("%MyDateOhneDoW%") do Set MyDateOhneDoW=%%i
ECHO Heute ist %MyDateOhneDow%
[zitiert aus dem Tutorial unten]
Dann wären zumindest 97% der Fälle erschlagen.
Wenn es ganz unabhängig von Länder/Sprach/Usereinstellungen sein soll ("99,5%-Lösung"), dann steht am Ende des ein universeller Batch für diesen Zweck.
Und, weil es mich bei dieser Google-Lösung immer wieder nervt:
(funktioniert)
FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set CDATE=%%c-%%b-%%a
(reicht auch)
FOR /F "tokens=1-3 delims=/. " %%a in ("%date%") do set CDATE=%%c-%%b-%%a
Grüße Biber
nur als Fußnote - schön, dass es auf Anhieb geklappt hat, passt auch in 85% der Fälle.
Wenn nämlich %date% als "TT.MM.JJJJ" zurückkommt.
Wenn es auch passen soll, wenn das angezeigte (deutsche) Datumsform einen Wochentag beinhaltet, dann:
Set MyDateOhneDoW=%date%
:: Die nächste Code-Zeile ändert nur dann etwas, wenn ein Wochentag mitgeliefert wird.
:: Aus "Sa 01.10.2005" wird dann "01.10.2005"
FOR /F "tokens=2" %%i in ("%MyDateOhneDoW%") do Set MyDateOhneDoW=%%i
ECHO Heute ist %MyDateOhneDow%
[zitiert aus dem Tutorial unten]
Dann wären zumindest 97% der Fälle erschlagen.
Wenn es ganz unabhängig von Länder/Sprach/Usereinstellungen sein soll ("99,5%-Lösung"), dann steht am Ende des ein universeller Batch für diesen Zweck.
Und, weil es mich bei dieser Google-Lösung immer wieder nervt:
(funktioniert)
FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set CDATE=%%c-%%b-%%a
(reicht auch)
FOR /F "tokens=1-3 delims=/. " %%a in ("%date%") do set CDATE=%%c-%%b-%%a
Grüße Biber
Ich habe schon drauf gelauert, wann der "Biber zubeisst"
Wenn es um Batches geht, scheint beim lieben Frank immer ein "Pawlowscher Reflex" in die Finger zu fahren ? das Know-how ist immer wieder beindruckend!
Liebe Grüße,
Rene
PS: @Biber: Von mir gibts ein paar Sterne, und zwar mehr als einen (auf den warte ich noch)
@Rene
Na, hier in diesem Beitrag hast Du jedenfalls die Sternchen verdient - Deine Lösung hat sofort gepasst und eLf0r zum Strahlen gebracht... dann geb ich sie Dir lieber hier als in dem Beitrag, wo Du so gebettelt hast... *gg
Schönes Wochenende
Biber
Na, hier in diesem Beitrag hast Du jedenfalls die Sternchen verdient - Deine Lösung hat sofort gepasst und eLf0r zum Strahlen gebracht... dann geb ich sie Dir lieber hier als in dem Beitrag, wo Du so gebettelt hast... *gg
Schönes Wochenende
Biber