Einsichtnehmen in laufendes Batch bei Aufgaben

  • #1
J

jan2

Bekanntes Mitglied
Themenersteller
Dabei seit
19.03.2002
Beiträge
606
Reaktionspunkte
0
Moin !

ich habe ein Batch-File das im manuellen Betrieb einwandfrei arbeitet. Startparameter gibt es keine.

Wenn ich eine Aufgabe definierte wird nur der zweite Teil ausgeführt bzw. beim manuellen Start der Aufgabe habe ich den Eindruck es endet nie. Jedenfalls ist die Dauer wesentlich höher als beim manuellen Start !

Das Batch läuft aus der Aufgabe ohne sichtbares Fenster.

Kann man dieses irgendwie erzwingen wie beim manuellen Start um den Ablauf zu verfolgen?

Gruß Jan :)
 
  • #2
Du kannst die Standardout/Standarderr Ausgabe der Batch in ein Log-File umleiten. Eventuell siehst Du den Fehler

deine_batch.cmd >>output.log 2>&1

Oder die ganze Ausgabe Umleiten deine_batch.cmd >> output.log
 
  • #3
Oder stelle einmal deine Batchdatei hier rein.
 
  • #4
Moin !

also beim manuellen Start sind die Protokolle wie erwartet gefüllt worden. Den Tipp habe ich also umgesetzt.

Mein Batch sieht wie folgt aus:
REM erstellen des Datums für den Dateinamens
FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set CDATE=%%c%%b%%aecho Erstellen eines WikiDumps
perl crondump.pl > c:\temp\crondump.log

set z7Folder="C:\Program Files (x86)\7-Zip"
REM erstellen des Datums für den Dateinamens
FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set CDATE=%%c%%b%%a
REM wenn es das Verzeichnis %1 nicht gibt, dann anlegen
set DevName=%1
set DevFolder=%2
echo Sicherung der mediawiki
set BackupFileName=c:\temp\WikiBackup\mediawiki_%CDATE%.zip
REM pruefen, ob das Packprogramm verfuegbar ist
if exist %z7Folder%\7z.exe GOTO :Check7zExistGo
ECHO ***** 7z-Packprogramm nicht verfuegbar !!! *****
goto :ScriptEnd
:Check7zExistGo
call %z7Folder%\7z.exe a %BackupFileName% "C:\mediawiki\"
echo.
echo.
echo Name der Sicherung:
echo 7z-Folder: %z7Folder%
echo BackupFileName: %BackupFileName%

Wenn ich den Task manuell starte wird das Perl-Script nicht ausgeführt!

Das Protokoll der output.log sieht wie folgt aus - das crondump.log-File bleibt hingegen leer:

C:\Windows\system32>
C:\Windows\system32>REM erstellen des Datums für den Dateinamens
C:\Windows\system32>FOR /F "tokens=1,2,3,4 delims=/. " %a in ('date/T') do set CDATE=%c%b%a
C:\Windows\system32>set CDATE=20141103
C:\Windows\system32>echo Erstellen eines WikiDumps
Erstellen eines WikiDumps
C:\Windows\system32>perl crondump.pl 1>c:\temp\crondump.log
C:\Windows\system32>set z7Folder="C:\Program Files (x86)\7-Zip"
C:\Windows\system32>REM erstellen des Datums für den Dateinamens
C:\Windows\system32>FOR /F "tokens=1,2,3,4 delims=/. " %a in ('date/T') do set CDATE=%c%b%a
C:\Windows\system32>set CDATE=20141103
C:\Windows\system32>REM wenn es das Verzeichnis nicht gibt, dann anlegen
C:\Windows\system32>set DevName=
C:\Windows\system32>set DevFolder=
C:\Windows\system32>echo Sicherung der mediawiki
Sicherung der mediawiki
C:\Windows\system32>set BackupFileName=c:\temp\WikiBackup\mediawiki_20141103.zip
C:\Windows\system32>REM pruefen, ob das Packprogramm verfuegbar ist
C:\Windows\system32>if exist "C:\Program Files (x86)\7-Zip"\7z.exe GOTO :Check7zExistGo
C:\Windows\system32>call "C:\Program Files (x86)\7-Zip"\7z.exe a c:\temp\WikiBackup\mediawiki_20141103.zip "C:\mediawiki\"
7-Zip [64] 9.20 Copyright (c) 1999-2010 Igor Pavlov 2010-11-18
Scanning

Eine Idee .... ?

Gruß Jan :)
 
  • #5
Du weisst aber schon, dass Pearl und die Cronjobs Serverabhängig sind'
Zusammen mit einer SQL Datenbank
 
  • #6
Hallo Renée,

ich verstehe leider nicht ganz was Du meinst. Ich starte den Task und auch das manuelle Script auf derselben Maschine ....

Gruß Jan :)
 
  • #8
Wenn ich den Task manuell starte wird das Perl-Script nicht ausgeführt!

Lass das unter dem Account laufen mit dem es manuell funktioniert. Sind die Umgebungsvariablen alle so dass der Perl-Interpreter gefunden wird und das Skript vom Typ .pl ausgeführt werden kann?

Das Protokoll der output.log sieht wie folgt aus - das crondump.log-File bleibt hingegen leer:

Der Geplante Task erzeugt keinen Standard Out/Error output, Du mußt eventuell ein cmd explizit im Aufruf deffinieren so wie unten:

cmd /C DeinBatchJob.pl >> BatchJob.output.txt 2>&1

Natürlich muß auch hier im cmd der Perl-Interpreter aufrufbar sein,, so wie oben schon beschrieben ...
 
Thema:

Einsichtnehmen in laufendes Batch bei Aufgaben

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.848
Beiträge
708.003
Mitglieder
51.499
Neuestes Mitglied
sugarland
Oben