KAPITEL 20. KOMMANDOZEILEN API
rem Synchronous r e c o r d
1
echo " { } I n i t i a t e master . . . "
2
s t a r t msb_record . exe
3
o master . msblog
timeout 2 >nul
4
echo " { } I n i t i a t e s l a v e . . . "
5
s t a r t msb_record . exe
6
s l a v e . msblog
timeout 2 >nul
7
echo " S t a r t synchronous r e c o r d . . . "
8
msb_record . exe
9
Und hier die Linux Variante:
# ! / b i n / bash
1
echo " I n i t i a t e master . . . "
2
msb_record
i
3
2 > >/ dev / n u l l
sleep 2
4
echo " I n i t i a t e s l a v e . . . "
5
msb_record
i
6
s l a v e . msblog &
sleep 2
7
echo " S t a r t r e c o r d "
8
msb_record
r s t a r t
9
Die Vorgehensweise ist für beide Betriebssysteme ähnlich.
Als erstes starten wie einen Hintergrundprozess für den Master (Zeile 3) und
weisen ihn an, auf ein Start Kommando zu warten, indem wir den Parameter
--paused anfügen.
Windows (bzw. die DOS Kommandoeingabe) verwendet das start Komman-
do, während Linux Anwender einfach ein Kaufmanns-Und '&' an die Komman-
dozeile anhängen um diese in den Hintergrund zu versetzen. In Linux leiten wir
zudem die stderr (2) Ausgabe nach /dev/null um.
Ein im Hintergrund laufender Prozess bedeutet: Die Kommandozeile wird los-
gelöst vom dem Skript ausführenden Terminal (oder DOS Fenster) gestartet.
Das Kommando kann deshalb nicht blockieren und die Ausführung wird unmit-
telbar mit der nächsten Skriptzeile fortgesetzt.
Zeile 4 (und 7) stellen der Programm Initialisierung ein paar Sekunden zur
Verfügung. Die DOS Kommandoeingabe besitzt keinen entsprechendes 'sleep'
Befehl, aber timeout erfüllt denselben Zweck
Der 'Slave' wird in Zeile 6 gestartet und ebenfalls als Hintergrundprozess aus-
geführt.
Zu diesem Zeitpunkt sind beide Analyser aufnahmebereit und der 'Master' war-
tet lediglich auf den Auslöser. Anstelle einer gedrückten Enter Taste (unmög-
lich, da der Prozess von jeglicher Tastatur entkoppelt ist) senden wir ihm in
Zeile 9 per 'Fernsteuerung' ein 'start' Kommando.
Beide Aufnahmeprozesse (Master und Slave) laufen anschließend völlig un-
3
timeout ist unter XP nicht verfügbar. Eine Alternative um eine Pause von 2s zu simulieren ist
das Kommando: ping 127.0.0.1 -n 3 >null
252
i
nMSB01000
i
nMSB02000
r s t a r t
nMSB01000
sync mode=master
o master . msblog &
nMSB02000
sync mode= s l a v e 2 > >/ dev / n u l l
sync mode=master
sync mode= s l a v e
o
paused
3
.
paused
o