batch einzelabarbeitung ?

  • #1
A

Alexander1701

Guest
Hallo
Wünsche allen ein frohes neues 2004 :D ;D 8) :p

Habe eine frage zur batch programierung ?

wie kann man ihn einer batch der reihe nach programme (oder befehle) abarbeiten lassen ?

z.b.

C:\Programme\AVPersonal\Inetupd.exe
C:\Programme\AVPersonal\AVWIN.EXE /BASK /DYNoMsg /C:

startet beide ausführungen , soll aber der reihe nach starten das heißt wenn ein programm (befehl) fertig ist dann soll erst der nächste abarbeitet werden

im denn beispiel da oben wird ein internet update gestartet und dann laufwerk c: nach viren durchsucht ( antivir)

doch wenn beides gleichzeitig gestartet wird kommt es zur fehlern oder sogaR ABSTURZ des Computers .

mfg
Alexander
 
  • #2
Hi

Probier mal die Programme über start aufrufen zu lassen.
Also
start C:\Programme\...\sdf.exe

Gruß, Michael
 
  • #3
mit START geht es leider auch nicht.
 
  • #4
in einer .bat oder .cmd datei wird nie ein programm gleichzeitig mit einem anderen gestartet, sondern erst wenn das zuerstgestartete fertig ist, deshalb heißt das verfahren auch batch (stapel). in deinem beispiel müßte erst das erste prog durchgelaufen sein erst dann wird das nächste prog gestartet. um eine sicherheit einzubauen, kannst du z.b. mit errorlevel auf fehler prüfen, d.h. erst wenn prog 1 keinen fehler zurückgibt das nächste prog starten usw. , dann ist gewährleistet, daß das 2. prog unter richtigen bedingungen läuft. wenn ein fehler auftritt, dann springst du zu eine marke z.b. mit :Ende bezeichnet und beendest die batch. die batch würde dann etwa so aussehn:

@echo off
C:\Programme\AVPersonal\Inetupd.exe
if not errorlevel 1 goto Ende
echo Beim Internetupdate von AV ist ein Fehler aufgetreten.
if not errorlevel 1 goto Ende
C:\Programme\AVPersonal\AVWIN.EXE /BASK /DYNoMsg /C:
echo Beim AV Personal programm ist ein Fehler aufgetreten
goto ende
:Ende

dies ist nur ein beispiel, die batchprogrammierung kann natürlich wesentlich mehr. die ausgabe deiner batch-datei kannst du z.b. dann auch in eine log-datei speichern, daßß kannst du auch später überprüfen, ob die batch sauber durchgelaufen ist oder nicht

start/ausführen/beispiel.bat >> c:\temp\beispiel.log

greetz

hugo
 
  • #5
PCDReitz schrieb:
Hi

Probier mal die Programme über start aufrufen zu lassen.
Also
start C:\Programme\...\sdf.exe

Gruß, Michael
Sollte das nicht so aussehen:
Code:
start /wait <Pfad zum Programm>

oder so
Code:
call <Pfad zum Programm>

?!?

Cheers,
Joshua
 
  • #6
thx an alle

es funktioniert ganz gut mit

start /wait <Pfad zum Programm>

frage an hp

daßß kannst du auch später überprüfen, ob die batch sauber durchgelaufen ist oder nicht

start/ausführen/beispiel.bat >> c:\temp\beispiel.log

das funktioniert leider nicht !

ich weiß nicht wo der fehler ist

--------------

gibt es eine möglichkeit

das die batch befehle nur einmal pro tag ausgeführt werden

das heißt wenn ich am donnerstag die batch starte ...... das wenn ich sie an denn gleichen tag starte das sie nicht aus geführt wird

mfg
Alex
 
  • #8
schön und gut , aber es gibt da keine lösung auf meine frage , Fonk , vieleicht schreibt mir ja einer doch noch eine lösung und keinen Link

mfg
Alex
 
Thema:

batch einzelabarbeitung ?

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben