hthnightwolf
Goto Top

Batch-Datei als geplanter Task läuft nicht komplett durch

Ich brauche Hilfe beim Einrichten einer Batch-Datei als geplanter Task auf einem Server 2008 Std (x64)

Ich richte eine Batch-Datei als geplanter Task ein, jedoch laufen von den angestrebten Kopiervorgängen nur die ersten 2, danach beendet sich die Datei kommentarlos. Auch im Ereignisprotokoll steht nichts.

beendet wird sie DIREKT nach rem ---------------Lohn kopieren---------------. Ich habe das mit einer abgewandelten Datei voller Echos jede Zeile geprüft ^.^

Die Datei sieht folgendermaßen aus:

echo off
cls

  IF EXIST b:\ NET USE b: /DELETE /Y 
  NET USE b: \\XXXSSERVER\d$ 

rem ---------------ReWe\Abf2000 kopieren---------------
  set COPYPFAD=\backup\SQL\ReWe\Abf2000\
    rmdir /s /q b:%COPYPFAD%
  for /f "delims=" %%i in ('dir d:%COPYPFAD% /a-d /b /od') do set Letzte_Datei=%%i  
    xcopy /K /R /E /I /S /C /H /O /Y d:%COPYPFAD%%Letzte_Datei% b:%COPYPFAD%
  dir b:%COPYPFAD% >d:\Backup\script.log

rem ---------------ReWe\Global kopieren---------------
  set COPYPFAD=\backup\SQL\ReWe\Global\
    rmdir /s /q b:%COPYPFAD%
  for /f "delims=" %%i in ('dir d:%COPYPFAD% /a-d /b /od') do set Letzte_Datei=%%i  
    xcopy /K /R /E /I /S /C /H /O /Y d:%COPYPFAD%%Letzte_Datei% b:%COPYPFAD%
  dir b:%COPYPFAD% >>d:\Backup\script.log

rem ---------------Lohn kopieren---------------
  set COPYPFAD=\backup\SQL\Lohn\
    rmdir /s /q b:%COPYPFAD%
  for /f "delims=" %%i in ('dir %COPYPFAD% /a-d /b /od') do set Letzte_Datei=%%i  
    xcopy /K /R /E /I /S /C /H /O /Y d:%COPYPFAD%%Letzte_Datei% b:%COPYPFAD%
  dir b:%COPYPFAD% >>d:\Backup\script.log

rem ---------------WinSped kopieren---------------
  set COPYPFAD=\backup\SQL\WinSped\
    rmdir /s /q b:%COPYPFAD%
  for /f "delims=" %%i in ('dir %COPYPFAD% /a-d /b /od') do set Letzte_Datei=%%i  
    xcopy /K /R /E /I /S /C /H /O /Y d:%COPYPFAD%%Letzte_Datei% b:%COPYPFAD%
  dir b:%COPYPFAD% >>d:\Backup\script.log

rem ---------------Systemstatus kopieren---------------
  set COPYPFAD=\Backup\Systemstatus\WindowsImageBackup\XXXS02SQL
    rmdir /s /q B:\Backup\Systemstatus\XXXS02SQL
    xcopy /K /R /E /I /S /C /H /O /Y d:%COPYPFAD% B:\Backup\Systemstatus\XXXS02SQL
  dir B:\Backup\Systemstatus\XXXS02SQL >>d:\Backup\script.log

NET USE b: /DELETE /Y

  D:\Backup\blat262\full\Blat -install XXXSERVER.XXX.local Administrator@xxx.de
  D:\Backup\blat262\full\Blat "d:\Backup\script.log" ^  
    -to alert@xxx.de -server xxxserver ^
    -debug -timestamp -log blatSMTPlog.txt ^
    -subject "XXX S02 Backup vom %DATE%"  

exit
Jemand eine Idee warum der rausspringt?

Starte ch die Datei manuell funktioniert sie.

EDIT: eingefügt

Content-ID: 157422

Url: https://administrator.de/forum/batch-datei-als-geplanter-task-laeuft-nicht-komplett-durch-157422.html

Ausgedruckt am: 23.12.2024 um 02:12 Uhr

Skyemugen
Skyemugen 22.12.2010 um 14:17:31 Uhr
Goto Top
Aloha,

wie lange läuft denn der Prozess manuell? Ist beim Taskplaner eventuell eine zu geringe Zeit gesetzt, wann der Task beendet werden soll?

greetz André

ps.: mit wäre die Ansicht doch irgendwo angenehmer ;)
HtHNightwolf
HtHNightwolf 22.12.2010 um 17:07:46 Uhr
Goto Top
Nein steht auf beenden nach 3 Tagen
Skyemugen
Skyemugen 22.12.2010 um 17:19:20 Uhr
Goto Top
Aloha,

was geschieht denn, wenn du die ersten zwei Kopiervorgänge mal ausklammerst und direkt beim dritten startest via taskplaner?

Grüße, André
HtHNightwolf
HtHNightwolf 23.12.2010 um 09:25:28 Uhr
Goto Top
Dann wirds noch komplizierter:

die Batch bricht nicht ab, sondern geht durch das "Lohn kopieren" durch, macht auch wieder ungefähr 2 Kopiervorgänge weiter, geht dann wieder unbegründet raus. ABer: trotzdem kopiert er nicht!!! Starte ich die modifizierte Datei, kopiert diese ebenso erfolgreich alle Daten.

Ich bin mit meinem Latein am Ende.
Skyemugen
Skyemugen 24.12.2010 um 10:49:47 Uhr
Goto Top
Aloha,

anfangs:
for /f "delims=" %%i in ('dir d:%COPYPFAD% /a-d /b /od') do set Letzte_Datei=%%i   

ab Lohn kopieren:
for /f "delims=" %%i in ('dir %COPYPFAD% /a-d /b /od') do set Letzte_Datei=%%i   

=) darum würde ich bei set copypfad auch immer den Laufwerksbuchstaben mit angeben, dann passiert so etwas nicht

kann man die ganze FOR-Schleife nicht auch als Variable definieren (set schleife=), dann würde man noch eine Fehlerquelle beseitigen

eigentlich könnte man da doch so vieles einmalig definieren (die Schleife, die Schalter, die Logdatei, teilweise sogar den ganzen xcopy-Ablauf, rmdir xD), wiederholt sich ja doch so einiges ;) würde das ganze übersichtlicher machen und weniger Fehlerquellen hervorbringen

greetz André

edit: Wobei es ja immernoch verwunderlich ist, dass es manuell alles funktionieren soll und per taskplaner nicht, na mal sehen, was geschieht, wenn du erstmal die Kleinigkeit behebst ;)