Windows - Dateien automatisch umbenennen - Datum - Zeit

Problem

Aus einem Windows-System heraus werden regelmäßig Daten gesichert und an einer bestimmten Stelle im Netzwerk gespeichert. Jede neue Speicherung erfolgt unter dem gleichen Namen wie die letzte. Wenn eine Sicherung misslingen sollte, würde die defekte Datei die letzte, intakte Datei überschreiben.

Ziel

Die gesicherte Datei soll nach dem Sichern an eine andere Stelle im Netzwerk kopiert werden - vom betreffenden Server weg - und sie soll umbenannt werden. Dabei sollen Datum und Uhrzeit im Namen erscheinen, so dass wiederholte Sicherungen chronologisch sortiert sind.

Lösung

In diesem Beispiel wird angenommen, dass eine dummy.txt regelmäßig auf der lokalen Festplatte gesichert wird. Die Sicherung erfolgt stets unter dem gleichen Namen und an der gleichen Stelle, damit die lokale Platte nicht volläuft. Die Datei wird solgleich an zwei anderen Server übertragen und dort umbenannt.

Das sind die Anweisungen der CMD-Datei zum Kopieren und Umbenennen der gesicherten dummy.txt.

@echo off
date/T
time/T
copy D:\gesichert\dummy.txt \\backupserver01\sicherung\dummy.txt /Y
copy D:\gesichert\dummy.txt \\backupserver02\sicherung\dummy.txt /Y
rem Stundenanzeige einstellig ohne führende Null.
rem Beispiel
rem dummy.txt wird zu
rem dummy_2016-02-28_9-41-45.txt
rem Quelle
rem http://www.mcseboard.de/topic/143861-dateien-regelmaessig-umbenennen-mit-erstellungsdatum/
rem Zeitstempel erzeugen
for /f "tokens=1-4 delims=. " %%i in ("%date%") do (
set day=%%i
set month=%%j
set year=%%k
)

for /f "tokens=1-4 delims=.:, " %%i in ("%time%") do (
set hour=%%i
set minute=%%j
set second=%%k
set hundredth=%%l
)
rename \\backupserver01\sicherung\dummy.txt dummy_%year%-%month%-%day%_%hour%-%minute%-%second%.txt
rename \\backupserver02\sicherung\dummy.txt dummy_%year%-%month%-%day%_%hour%-%minute%-%second%.txt

Die so erzeugten Dateien sortieren sich chronologisch. Es sieht besser aus, wenn alle Aufträge zu Zeiten von 10 bis 24 Uhr stattfinden, so dass die Stunden-Angaben zweistellig sind.

Praktisch ist, dass man einfach weitere Zeilen in diese Datei einfügt und sogleich werden weitere Dateien kopiert und umbenannt. Der Task für diese CMD-Datei ist ja bereits eingerichtet.

Quelle
http://www.mcseboard.de/topic/143861-dateien-regelmaessig-umbenennen-mit-erstellungsdatum/