1 Sebastian Röhl, 28.06.2001 Batch-Programmierung Grundlagen

Preview:

Citation preview

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

11

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001

28.06.028.06.011

Sebastian.Roehl@rrze.uni-erlangen.deSebastian.Roehl@rrze.uni-erlangen.de

Sebastian RöhlSebastian Röhl

Batch-Batch-ProgrammierungProgrammierung

GrundlagenGrundlagen

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

33

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001GliederungGliederung

Was ist Batch?Was ist Batch? Grundlegende BefehleGrundlegende Befehle

- Kommentare - Kommentare („Rem“; „::“)(„Rem“; „::“)

- Bildschirmausgaben - Bildschirmausgaben („Echo“)(„Echo“)

- Unterbrechungen - Unterbrechungen („Pause“)(„Pause“)

- Sprungbefehle und Sprungmarken - Sprungbefehle und Sprungmarken („Goto“ („Goto“ <Label>)<Label>)

- Unterprogrammaufrufe - Unterprogrammaufrufe („Call“)(„Call“)

BefehlsparameterBefehlsparameter Was sind „Errorlevel“?Was sind „Errorlevel“? BedingungenBedingungen

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

44

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001

Was ist Was ist Batch?Batch?

MerkmaleMerkmale::- Batch-Datei muß die Endung „Batch-Datei muß die Endung „BATBAT“ “

habenhaben- In Windows und DOS standardmäßig In Windows und DOS standardmäßig

integriertintegriert- Zum Erstellen wird ein ASCII-Editor Zum Erstellen wird ein ASCII-Editor

benötigt (z. B. „Notepad“, „Edit“)benötigt (z. B. „Notepad“, „Edit“)- Befehle werden Zeilenweise Befehle werden Zeilenweise

nacheinander abgearbeitetnacheinander abgearbeitet

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

55

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001„„Rem“ oder „::“Rem“ oder „::“

Definition:Definition: Der Befehl „Rem“ bzw „::“ Der Befehl „Rem“ bzw „::“ erklärt einen Text erklärt einen Text

zum zum KommentarKommentar

Kommentare werden Kommentare werden nicht nicht auf dem auf dem Bildschirm angezeigtBildschirm angezeigt

Vorteil von „::“Vorteil von „::“

Es Können alle Zeichen für Kommentare Es Können alle Zeichen für Kommentare Verwendet werden auch „<“ „>“ „|“Verwendet werden auch „<“ „>“ „|“

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

66

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001„„Echo“ und „@Echo“Echo“ und „@Echo“

Definition:Definition: Der Befehl „Echo“ legt fest was auf Der Befehl „Echo“ legt fest was auf dem dem

Bildschirm ausgebeben wirdBildschirm ausgebeben wird

„„Echo On“Echo On“ „Echo Off“„Echo Off“ „@Echo Off“„@Echo Off“

(Standard)(Standard) AnzeigeAnzeige keine Anzeige keine Anzeige keine Anzeige keine Anzeigeder Eingabender Eingaben der Eingabender Eingaben der Eingabender Eingaben

auch nicht desauch nicht desEcho-BefehlsEcho-Befehls

Durch „Echo“ <Text> wird der <Text> hinter „Echo“ ausgegebenDurch „Echo“ <Text> wird der <Text> hinter „Echo“ ausgegebenBei „Echo On“ werden Eingaben vor denen ein „@“ ist Bei „Echo On“ werden Eingaben vor denen ein „@“ ist

ausgeblendetausgeblendet

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

77

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001„„Pause“Pause“

Definition:Definition: Der Befehl „Pause“ Der Befehl „Pause“ stoppt stoppt den Batch-Ablaufden Batch-Ablauf

Es wird immer die MeldungEs wird immer die Meldung

„„Weiter mit beliebiger Taste“Weiter mit beliebiger Taste“

ausgegebenausgegeben

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

88

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001„„Goto“ <Label>Goto“ <Label>

Definition:Definition: Durch den Befehl „Goto“ wird zu Durch den Befehl „Goto“ wird zu einem beliebigen <Label> einem beliebigen <Label>

gesprungen.gesprungen.

Ein <Label> wird durch einen Ein <Label> wird durch einen

vorangestellten „:“ gekennzeichnetvorangestellten „:“ gekennzeichnet

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

99

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001

„„Call“ Call“ <Datei><Datei>

Definition: Durch den Befehl „Call“ <Datei> werdenuntergeordnete Batch-Dateien aufgerufen

Nur Call-Befehl verwenden sonst kein Rücksprung inursprüngliche Batch-Datei

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

1010

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001BefehlsparameterBefehlsparameter „%1, %2“... „%1, %2“...

In Batch-Abläufen sind oft variable Angaben In Batch-Abläufen sind oft variable Angaben erforderlich, die erst mit dem jeweiligen erforderlich, die erst mit dem jeweiligen Aufruf bestimmt werden sollen. Dazu Aufruf bestimmt werden sollen. Dazu werden in die Batch-Datei Platzhalter werden in die Batch-Datei Platzhalter eingebaut, die beim Start mit den Werten eingebaut, die beim Start mit den Werten hinter der Befehlszeile ausgetauscht hinter der Befehlszeile ausgetauscht werden.werden.

„„%1 - %9“ möglich%1 - %9“ möglich

(Aufruf Test.bat)(Aufruf Test.bat) (Übergebene Parameter)(Übergebene Parameter)

Test A: B: C: ergibtTest A: B: C: ergibt %1 = A: %1 = A: %2 = B: %2 = B:

%3 = C:%3 = C:

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

1111

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

1212

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001Errorlevel 0 ... 255Errorlevel 0 ... 255

Definition:Definition: Viele DOS-Programme liefern Viele DOS-Programme liefern beimbeim

Beenden einen sogenanntenBeenden einen sogenanntenErrorlevelErrorlevel

Merkmale:Merkmale: Kann die Werte 0 bis 255 annehmenKann die Werte 0 bis 255 annehmen Errorlevel 0 bedeutet ohne Fehler beendetErrorlevel 0 bedeutet ohne Fehler beendet Jeder Errorlevel beinhaltet auch die Jeder Errorlevel beinhaltet auch die

niedrigeren Errorlevel mit (d.h. 3 niedrigeren Errorlevel mit (d.h. 3 beinhaltet auch 2, 1 u. 0)beinhaltet auch 2, 1 u. 0)

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

1313

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001Bedingungen „IF [not]“ ...Bedingungen „IF [not]“ ...

Bedingungen werden durch IF-Ausdrücke Bedingungen werden durch IF-Ausdrücke formuliertformuliert

Man unterscheidet drei Varianten:Man unterscheidet drei Varianten:

- IF [not] exist <Datei-Ausdruck>- IF [not] exist <Datei-Ausdruck>

- IF [not] errorlevel <n>- IF [not] errorlevel <n>

- IF [not] <1>==<2>- IF [not] <1>==<2> Nach einer Bedingung kann jede beliebige Nach einer Bedingung kann jede beliebige

Batch-Anweisung stehen (z.B. Goto, Call, Batch-Anweisung stehen (z.B. Goto, Call, Copy, etc...)Copy, etc...)

Batch-Anweisungen werden nur ausgeführt Batch-Anweisungen werden nur ausgeführt wenn die Bedingung wahr ist!!wenn die Bedingung wahr ist!!

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

1414

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

1515

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

1616

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

1717

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001QuellenQuellen

Batch für EinsteigerBatch für Einsteiger MS DOS HandbuchMS DOS Handbuch Internet (verschiedene Seiten)Internet (verschiedene Seiten)

Kontakt:Kontakt:

Sebastian.Roehl@rrze.uni-Sebastian.Roehl@rrze.uni-erlangen.deerlangen.de

Batch-Programmierung Batch-Programmierung GrundlagenGrundlagen

1818

Sebastian Röhl, 28.06.2001Sebastian Röhl, 28.06.2001

Recommended