Hallo Herakles,
Auszug BatchKurs:
http://www.antonis.de/dos/batchtut/bat-kurs/index.htm#03
Weitere Informationen
---------------------
Interresant wird der ECHO-Befehl erst mit Umleitungen/Pipes.
Außerdem können mit Hilfe der ANSI-Sequenzen Farben und Cursor-
Steuerungen (u.a.) ins Spiel gebracht werden. Mehr dazu später.
=========== ECHO Umleitung =========================
Das Thema "Umleitungen" soll eigentlich erst später behandelt
werden, aber die ECHO-Umleitung wird schon mal vorweg genommen,
weil sie recht unproblematisch ist.
Ein ECHO-Text kann sehr einfach mit einem ">"-Zeichen (Pfeil nach
rechts) in eine Datei oder an ein anderes Gerät - wie LPT1, also
an den Drucker - umgeleitet werden. Beispiel:
ECHO irgendwas> TEST.DAT
ECHO irgendwas> LPT1
Genau wie auf dem Bildschirm, wird auch in diesen Fällen der Text
mit einem Zeilenvorschub (CR,LF) ausgegeben. Eine leere Zeile
(also nur ein Zeilenvorschub) kann so ausgegeben werden:
ECHO.> TEST.DAT
Die angegebene Datei wird neu angelegt, d.h. wenn diese Datei
bereits vorhanden war, wird sie ohne Warnung überschrieben!!
Es ist aber auch möglich, eine Zeile an eine vorhandene Datei
anzufügen. Dazu werden einfach zwei Pfeile (">>") verwendet:
ECHO eine Zeile > TEST.DAT
ECHO noch eine Zeile >> TEST.DAT
Übrigens: eventuelle Leerzeichen vor dem Pfeil werden mit in die
Datei geschrieben!
Die ECHO-Umleitungen lassen sich gut auf der Befehlsebene testen.
=========== PAUSE ==================================
Mit der PAUSE-Anweisung wird der BAT-Ablauf angehalten. DOS gibt
dazu standardmäßig diese (oder eine ähnliche) Aufforderung aus:
Weiter mit beliebiger Taste . . .
Ein Abbruch ist an dieser Stelle, wie üblich, mit Control-C oder
Control-BREAK (Strg-Unterbr.) möglich.
Soll mehr als nur die Standard-Meldung erscheinen, können vorher
geeignete ECHO-Anweisungen gemacht, werden, z.B.:
ECHO Bitte Diskette wechseln!
Pause
Beim PAUSE-Befehl werden weitere Angaben in der selben Zeile
ignoriert. Allerdings werden eventuelle Umleitungszeichen <|> von
DOS konsequent abgearbeitet, was selten Sinn macht - bis auf diesen
Fall:
PAUSE > NUL
Damit wird die Ausgabe der Standardaufforderung ins Nichts
umgeleitet, falls man etwas anderes per ECHO formuliert hat.
Hinweis:
Bis DOS Version 5.0 war es nicht möglich, die gedrückte Taste
anschließend abzufragen. Auch eine automatische Fortsetzung nach
einer gewissen Zeit war nicht vorgesehen. Ab DOS 6.0 wird dafür
das Hilfsprogramm CHOICE mitgeliefert (s. Lektion CHOICE).
gruss rudy
ps:
weitere Bücher zur Batch-Programmierung:
http://de.wikibooks.org/wiki/Batch-Programmierung
oder mal was ganz anderes mit Batch:
http://www.sdm.de/de/publikationen/fachartikel/2004/sdm_pub_js_fuchs/index.html
pps:
so dann gilt zu beachten das es unterschiede in der Syntax zu Dos, Win95/98 sowie NT/2000 und letzendlich Xp gibt...