patrickb90
Goto Top

Batch Script Datensicherung

Guten morgen,

zur Datensicherung mehrerer Access MDBs wird ein regelmäßiger Task ausgeführt, der die Daten auf einen NAS kopiert.
Das Script soll einen Ordner mit dem aktuellen Datum und der Uhrzeit erstellen.
Funktioniert ansich auch wunderbar, nur nicht im Zeitraum von 07:00 - 09:00 Uhr.
Also dem Zeitraum wo eine führende Null in der Uhrzeit steht.

Hat jemand eine Idee, welche Parameter hinzugefügt werden müssen, um das korrekte Kopieren zu ermöglichen?

@echo off

set CURRENTTIME=%TIME::=.%
set CURRENTTIME=%CURRENTTIME:~0,8%
set ARCHIVNAME=AVDATEN-%DATE%-%CURRENTTIME%

mkdir \\in-nas-01\datensicherung_data\access_mdb_sicherungen\%ARCHIVNAME%

set ziel="\\in-nas-01\datensicherung_data\access_mdb_sicherungen\%ARCHIVNAME%"  
echo %ziel%
echo kopiere "D:\daten\Arbeit\FIRMENNAME\BA\BA_daten.mdb"  
copy "D:\daten\Arbeit\FIRMENNAME\BA\BA_daten.mdb" %ziel%  

echo kopiere "D:\daten\Arbeit\FIRMENNAME\DATEN\DATEN.MDB"  
copy "D:\daten\Arbeit\FIRMENNAME\DATEN\DATEN.MDB" %ziel%  

echo kopiere "D:\daten\Arbeit\FIRMENNAME\DATEN\Daten_ex.mdb"  
copy "D:\daten\Arbeit\FIRMENNAME\DATEN\Daten_ex.mdb" %ziel%  

echo kopiere "D:\daten\Arbeit\FIRMENNAME\EL_KALK\EL_KALK_daten_deleco.mdb"  
copy "D:\daten\Arbeit\FIRMENNAME\EL_KALK\EL_KALK_daten_deleco.mdb" %ziel%  

echo kopiere "D:\daten\Inland\FIRMENNAME\DATEN\vtdaten.mdb"  
copy "D:\daten\Inland\FIRMENNAME\DATEN\vtdaten.mdb" %ziel%  

echo kopiere "D:\daten\Inland\FIRMENNAME\etiketten\etiketten.mdb"  
copy "D:\daten\Inland\FIRMENNAME\etiketten\etiketten.mdb" %ziel%  

echo kopiere "D:\daten\Inland\FIRMENNAME\kalkulation inland\kalkulation inland.mde"  
copy "D:\daten\Inland\FIRMENNAME\kalkulation inland\kalkulation inland.mde" %ziel%  

blat -to it-report@FIRMENNAME.com -f AccessSicherung@FIRMENNAME.com -server mail.FIRMENNAME.com -subject "AccessSicherung" -body "Erfolgreich kopiert" %ziel%  

Content-ID: 279771

Url: https://administrator.de/forum/batch-script-datensicherung-279771.html

Ausgedruckt am: 28.12.2024 um 00:12 Uhr

gupy2000
Lösung gupy2000 11.08.2015 aktualisiert um 08:08:07 Uhr
Goto Top
Hallo,

probier mal:

for /f "tokens=1-3 delims=." %%a in ("%date%") do set "dstamp=%%c_%%b_%%a"
for /f "tokens=1-4 delims=:, " %%a in ("%time%") do set "tstamp=0%%a_%%b_%%c"
set "timestamp=%dstamp%_%tstamp:~-8%"
set ARCHIVNAME=archiv.%timestamp%

Grüße
gupy2000