renedd
Goto Top

Datei kopieren und anschliesend fortlaufend nummerieren

Ich habe folgendes Problem:

Täglich wird ein logfile erzeugt jedoch wird es immer wieder überschrieben.

Mein Lösungsansatz sieht wie folgt aus:

1. Datei aus einem Verzeichnis in ein anderes Verzeichnis kopieren
2. Datei umbenennen und fortlaufend numerieren (3stellig)

Hat jemand von den Codern eine pfiffige Idee wie man das umsetzen kann bin für jeden Hinweis wirklich dankbar

Gruß Rene

Content-ID: 195540

Url: https://administrator.de/forum/datei-kopieren-und-anschliesend-fortlaufend-nummerieren-195540.html

Ausgedruckt am: 23.12.2024 um 09:12 Uhr

bastla
bastla 07.12.2012 aktualisiert um 23:46:38 Uhr
Goto Top
Hallo Renedd und willkommen im Forum!

Wäre es nicht vielleicht sinnvoller, dem Dateinamen das Datum hinzuzufügen? Das könnte dann (ungetestet) so aussehen:
@echo off & setlocal
set "Quelle=D:\Ordner mit aktuellen Logs"  
set "Log=Logfilename.log"  
set "Ziel=D:\Ordner mit archivierten Logs"  

for %%i in ("%Quelle%\%Log%") do move "%%i" "%Ziel%\%%~ni_%date:~-4%-%date:~-7,2%-%date:~-10,2%%%~xi"  
Falls Du dennoch Deinen ursprünglichen Ansatz realisieren möchtest:
@echo off & setlocal
set "Quelle=D:\Ordner mit aktuellen Logs"  
set "Log=Logfilename.log"  
set "Ziel=D:\Ordner mit archivierten Logs"  

set /a Nr=1001
:Loop
if exist "%Ziel%\%Nr:~-3%_%Log%" (set /a Nr+=1 & goto :Loop)  
move "%Quelle%\%Log%" "%Ziel%\%Nr:~-3%_%Log%"  
Grüße
bastla
Renedd
Renedd 08.12.2012 um 00:01:33 Uhr
Goto Top
Super ohne Worte, einen schönen 2. Advent wünsche ich Dir.

Gruß Rene