REFERAT-MenüDeutschGeographieGeschichteChemieBiographienElektronik
 EnglischEpochenFranzösischBiologieInformatikItalienisch
 KunstLateinLiteraturMathematikMusikPhilosophie
 PhysikPolitikPsychologieRechtSonstigeSpanisch
 SportTechnikWirtschaftWirtschaftskunde  



DFU-Skript-Befehlssprache Zur Unterstutzung bei der Skripterstellung fur das DFU-Netzwerk



DFÜ-Skript-Befehlssprache

Zur Unterstützung bei der Skripterstellung für das DFÜ-Netzwerk








Inhaltsverzeichnis


Übersicht

Grundstruktur eines Skripts

Variablen

Systemvariablen

Zeichenfolgenliterale

Ausdrücke

Kommentare

Schlüsselwörter

Befehle

Reservierte Wörter





Übersicht


Bei vielen Internet-Dienstanbietern und Online-Diensten müssen Sie Informationen wie Ihren Benutzernamen und Ihr Kennwort manuell eingeben, um eine Verbindung herzustellen. Mit der Unterstützung bei der Skripterstellung für das DFÜ-Netzwerk können Sie ein Skript schreiben, um diesen Vorgang zu automatisieren.


Ein Skript ist eine Textdatei mit einer Folge von Befehlen, Parametern und Ausdrücken, die ein Internet-Dienstanbieter oder Online-Dienst benötigt, um die Verbindung herzustellen und den Dienst zu nutzen. Sie können eine Skriptdatei mit jedem beliebigen Texteditor, z.B. dem Microsoft Editor, erstellen. Nachdem Sie die Skriptdatei erstellt haben, können Sie sie einer bestimmten DFÜ-Netzwerk-Verbindung zuweisen, indem Sie den DFÜ-Skript-Editor ausführen.



Grundstruktur eines Skripts


Ein Befehl ist die grundlegende Anweisung in einer Skriptdatei. Einige Befehle erfordern Parameter, die genauer definieren, welche Aufgabe der Befehl ausführen soll. Ein Ausdruck ist eine Kombination aus Operatoren und Argumenten, die ein Ergebnis erstellen. Ausdrücke können als Werte in jedem beliebigen Befehl verwendet werden. Beispiele für Ausdrücke sind arithmetische Vergleiche, Vergleichsoperatoren und Zeichenfolgenverkettungen.


Die Grundform eines Skripts für das DFÜ-Netzwerk sieht wie folgt aus:



; Ein Kommentar beginnt mit einem Semikolon und reicht bis

; zum Ende der Zeile.



proc main

Ein Skript kann eine beliebige Anzahl Variablen

und Befehle enthalten.


Variablendeklarationen


Befehlsblock


endproc


Ein Skript muß eine Hauptprozedur enthalten, die durch das Schlüsselwort proc eingeleitet wird und mit dem Schlüsselwort endproc endet.


Sie müssen Variablen deklarieren, bevor Sie Befehle hinzufügen. Der erste Befehl in der Hauptprozedur wird ausgeführt. Anschließend werden alle nachfolgenden Befehle in der Reihenfolge ausgeführt, in der sie im Skript aufgeführt sind. Das Skript endet, wenn das Ende der Hauptprozedur erreicht wird.



Variablen


Skripts können Variablen enthalten. Variablennamen müssen mit einem Buchstaben oder einem Unterstrich ('_') anfangen und können eine beliebige Folge von Groß- oder Kleinbuchstaben, Ziffern und Unterstrichen enthalten. Ein reserviertes Wort kann nicht als Variablenname verwendet werden. Weitere Informationen finden Sie in der Liste der reservierten Wörter am Ende dieses Dokuments.


Sie müssen Variablen deklarieren, bevor Sie sie verwenden. Wenn Sie eine Variable deklarieren, müssen Sie auch ihren Typ definieren. Eine Variable eines bestimmten Typs kann nur Werte desselben Typs enthalten. Die folgenden drei Variablentypen werden unterstützt:


Typ Beschreibung


Integer (Ganzzahl)      Eine negative oder positive Zahl, wie z.B. 7, -12 oder 5698.


String (Zeichenfolge) Eine Folge von Zeichen in Anführungszeichen;

z.B. 'Hallo Welt!' oder 'Geben Sie ein Kennwort ein:'.


Boolean (boolesch) Ein logischer boolescher Wert von TRUE (Wahr) oder

FALSE (Falsch).


Variablen werden Werten mit der folgenden Anweisung zugewiesen:


Variable = Ausdruck


Die Variable erhält den ausgewerteten Ausdruck.


Beispiele:


integer count = 5

integer timeout = (4 * 3)

integer i


boolean bDone = FALSE


string szIP = 'getip 2'


set ipaddr szIP



Systemvariablen


Systemvariablen werden durch Befehle für die Skripterstellung festgelegt oder durch die Informationen bestimmt, die Sie beim Einrichten einer DFÜ-Netzwerk-Verbindung eingeben. Systemvariablen sind schreibgeschützt und können deshalb im Skript nicht geändert werden. Es gibt folgende Systemvariablen:


Name Typ Beschreibung


$USERID String Die Benutzerkennung für die aktuelle Verbindung.

Diese Variable ist der Wert des im Dialogfeld Verbinden mit

des DFÜ-Netzwerks angegebenen Benutzernamens.


$PASSWORD String Das Kennwort für die aktuelle Verbindung.

Diese Variable ist der Wert des im Dialogfeld Verbinden mit

des DFÜ-Netzwerks angegebenen Benutzernamens.


$SUCCESS     Boolean Diese Variable wird durch bestimmte Befehle festgelegt und soll

anzeigen, ob der Befehl erfolgreich ausgeführt wurde oder nicht.

Ein Skript kann anhand des Wertes dieser Variablen

Entscheidungen treffen.


$FAILURE      Boolean Diese Variable wird durch bestimmte Befehle festgelegt und soll

anzeigen, ob bei der Ausführung des Befehls ein Fehler auftrat

oder nicht. Ein Skript kann anhand des Wertes dieser Variablen

Entscheidungen treffen.





Diese Variablen können an allen Stellen eingesetzt werden, an denen ein Ausdruck eines ähnlichen Typs verwendet wird. So ist z.B.


transmit $USERID


ein gültiger Befehl, weil $USERID eine Variable vom Typ "String' ist.



Zeichenfolgenliterale



Die Skripterstellung für das DFÜ-Netzwerk unterstützt Escape-Folgen und Übersetzungen des Caret-Zeichens entsprechend der folgenden Beschreibung.


Zeichenfolgenliteral Beschreibung


Zchn Übersetzung des Caret-Zeichens


Ist Zchn ein Wert zwischen '@' und '_', wird die Zeichenfolge in einen Ein-Byte-Wert zwischen 0 und 31 übersetzt. Zum Beispiel wird ^M in einen Wagenrücklauf umgewandelt.


Ist Zchn ein Wert zwischen a und z, wird die Zeichenfolge in einen Ein-Byte-Wert zwischen 1 und 26 übersetzt.


Ist Zchn irgendein anderer Wert, wird die Zeichenfolge nicht besonders behandelt.


<cr> Wagenrücklauf

<lf> Zeilenvorschub

Anführungszeichen

Einfaches Caret-Zeichen

< Einfaches '<'

Umgekehrter Schrägstrich


Beispiele:


transmit '^M'

transmit 'Hans^M'

transmit '<cr><lf>'

waitfor '<cr><lf>'



Ausdrücke


Ein Ausdruck ist eine Kombination aus Operatoren und Argumenten, die ein Ergebnis auswerten. Ausdrücke können als Werte in einem Befehl verwendet werden.


Ein Ausdruck kann jede Variable oder aber Integer-, String- oder Boolean-Werte mit jedem der unären und binären Operatoren in den folgenden Tabellen kombinieren. Alle unären Operatoren haben höchste Priorität. Die Priorität von binären Operatoren wird durch ihre Position in der Tabelle angegeben.


Unär sind die folgenden Operatoren:


Operator Art der Operation


- Unäres Minus

! Einerkomplement


Die binären Operatoren sind in der folgenden Tabelle in der Reihenfolge ihrer Priorität aufgeführt. Operatoren mit höherer Priorität sind zuerst aufgeführt:


Operatoren Art der Operation Einschränkungen beim Typ


* / Multiplikation Integer

+ - Addition Integer, String (nur +)

< > <= >= Relational Integer

== != Gleichheit Integer, String, Boolean

and Logisches UND Boolean

or Logisches ODER Boolean


Beispiele:


count = 3 + 5 * 40

transmit 'Hallo' + ' Ihr'

delay 24 / (7 - 1)


Kommentare


Der gesamte Text in einer Zeile hinter einem Semikolon wird ignoriert.


Beispiele:


; dies ist ein Kommentar


transmit 'Hallo'                        ; Zeichenfolge 'Hallo' übertragen


Schlüsselwörter


Schlüsselwörter legen die Struktur des Skripts fest. Im Gegensatz zu Befehlen führen Schlüsselwörter keine Aktion aus. Die Schlüsselwörter werden im folgenden aufgelistet.


proc Name


Bezeichnet den Anfang einer Prozedur. Alle Skripts müssen eine Hauptprozedur (proc main) enthalten. Die Skriptausführung beginnt bei der Hauptprozedur und endet am Ende der Hauptprozedur.


endproc


Bezeichnet das Ende einer Prozedur. Wenn das Skript bis zur Anweisung endproc für die Hauptprozedur ausgeführt worden ist, startet das DFÜ-Netzwerk PPP oder SLIP.


integer Name [ = Wert ]


Deklariert eine Variable vom Typ "Integer'. Sie können die Variable mit jedem numerischen Ausdruck oder jeder Variablen initialisieren.


string Name [ = Wert ]


Deklariert eine Variable vom Typ "String'. Sie können die Variable mit jedem Zeichenfolgenliteral oder jeder Variablen initialisieren.


boolean Name [ = Wert ]




Deklariert eine Variable vom Typ "Boolean'. Sie können die Variable mit jedem booleschen Ausdruck oder jeder Variablen initialisieren.



Befehle


Alle Befehle sind reservierte Wörter. Deshalb können Sie keine Variablen deklarieren, die dieselben Namen wie die Befehle haben. Die Befehle werden im folgenden aufgelistet.


delay nSekunden


Hält während der durch nSekunden angegebenen Anzahl Sekunden an, bevor der nächste Befehl im Skript ausgeführt wird.


Beispiele:


delay 2 ; hält 2 Sekunden lang an

delay x * 3 ; hält x * 3 Sekunden lang an



getip Wert


Wartet darauf, eine IP-Adresse vom Remote-Computer zu erhalten. Wenn der Internet-Dienstanbieter mehrere IP-Adressen in einer Zeichenfolge zurückgibt, legen Sie mit dem Parameter Wert fest, welche IP-Adresse das Skript verwenden soll.


Beispiele:


; zweite IP-Adresse erhalten

set ipaddr getip 2


; erste erhaltene IP-Adresse einer Variablen zuweisen

szAddress = getip



goto Marke


Springt zu der im Skript durch Marke angegebenen Position und fährt mit der Ausführung der auf die Marke folgenden Befehle fort.


Beispiel:


waitfor 'Prompt>' until 10

if !$SUCCESS then

goto Übergabe ; springt zu 'Übergabe' und führt die

; sich daran anschließenden Befehle aus

endif


transmit 'bbs^M'

goto End


Übergabe:

transmit '^M'



halt


Beendet das Skript. Dieser Befehl entfernt nicht das Terminal-Dialogfeldfenster. Sie müssen auf Weiter klicken, um die Verbindung herzustellen. Das Skript kann nicht erneut gestartet werden.



if Bedingung then

Befehle

endif


Führt die Folge von Befehlen aus, wenn Bedingung TRUE ist.


Beispiel:


if $USERID == 'Hans' then

transmit 'Hansi^M'

endif



Marke


Gibt die Stelle im Skript an, zu der der Sprung erfolgen soll. Eine Marke muß ein eindeutiger Name entsprechend den Namenskonventionen für Variablen sein.



set port databits


Andert die Anzahl der Bits in den während der Sitzung übertragenen und empfangenen Bytes. Die Bitanzahl kann zwischen 5 und 8 betragen. Wenn Sie diesen Befehl nicht einbeziehen, verwendet das DFÜ-Netzwerk die für die Verbindung festgelegten Eigenschafteneinstellungen.


Beispiel:


set port databits 7



set port parity none | odd | even | mark | space


Andert das Paritätsschema für den Anschluß während der Sitzung. Wenn Sie diesen Befehl nicht einbeziehen, verwendet das DFÜ-Netzwerk die für die Verbindung festgelegten Eigenschafteneinstellungen.


Beispiel:


set port parity even



set port stopbits


Andert die Anzahl der Stopbits für den Anschluß während der Sitzung. Diese Zahl kann 1 oder 2 sein. Wenn Sie diesen Befehl nicht einbeziehen, verwendet das DFÜ-Netzwerk die für die Verbindung festgelegten Eigenschafteneinstellungen.


Beispiel:


set port stopbits 2



set screen keyboard on | off


Aktiviert oder deaktiviert die Tastatureingabe im Terminalfenster für die Skripterstellung.


Beispiel:




set screen keyboard on



set ipaddr Zeichenfolge


Gibt die IP-Adresse der Arbeitsstation für die Sitzung an. Zeichenfolge muß in Form einer IP-Adresse eingegeben werden.


Beispiele:


szIPAddress = '11.543.23.13'

set ipaddr szIPAddress


set ipaddr '11.543.23.13'


set ipaddr getip



transmit Zeichenfolge [ , raw ]


Sendet die durch Zeichenfolge angegebenen Zeichen an den Remote-Computer.


Der Remote-Computer erkennt Escape-Folgen und Übersetzungen des Caret-Zeichens, außer wenn Sie den Parameter raw in den Befehl einbeziehen. Der Parameter raw ist zweckmäßig bei der Übertragung der Systemvariablen $USERID und $PASSWORD, wenn der Benutzername oder das Kennwort Zeichenfolgen enthalten, die ohne diesen Parameter als Caret-Zeichen oder Escape-Folgen interpretiert würden.


Beispiele:


transmit 'slip' + '^M'

transmit $USERID, raw



waitfor Zeichenfolge [ , matchcase ] [ then Marke

]

[ until Zeit ]


Wartet, bis der Computer eine oder mehrere der angegebenen Zeichenfolgen vom Remote-Computer empfängt. Der Parameter Zeichenfolge ist unabhängig von Groß-/Kleinschreibung, außer wenn Sie den Parameter matchcase einbeziehen.


Wenn eine entsprechende Zeichenfolge empfangen und der Parameter then Marke verwendet wird, springt dieser Befehl zu der Stelle in der Skriptdatei, die durch Marke bezeichnet wird.


Der optionale Parameter until Zeit definiert die maximale Anzahl Sekunden, während der der Computer auf den Empfang der Zeichenfolge wartet, bevor er den nächsten Befehl ausführt. Ohne diesen Parameter wartet der Computer endlos lang.


Wenn der Computer eine der angegebenen Zeichenfolgen empfängt, wird die Systemvariable $SUCCESS auf TRUE eingestellt. Andernfalls wird sie auf FALSE eingestellt, wenn die durch Zeit festgelegten Sekunden vor Empfang der Zeichenfolge ablaufen.


Beispiele:


waitfor 'Anmelden:'


waitfor 'Kennwort?', matchcase


waitfor 'Prompt>' until 10


waitfor

'Anmelden:' then DoLogin,

'Kennwort:' then DoPassword,

'BBS:' then DoBBS,

'Andere:' then DoOther

until 10



while Bedingung do

Befehle

endwhile


Führt die Folge von Befehlen aus, bis Bedingung den Wert FALSE zurückgibt.


Beispiel:


integer count = 0


while count < 4 do

transmit '^M'

waitfor 'Anmelden:' until 10

if $SUCCESS then

goto DoLogin

endif

count = count + 1

endwhile




Reservierte Wörter


Die folgenden Wörter sind reserviert und können nicht als Variablennamen verwendet werden.


and boolean databits delay

do endif endproc endwhile

even FALSE getip goto

halt if integer ipaddr

keyboard mark matchcase none

odd off on or

parity port proc raw

screen set space stopbits

string then transmit TRUE

until waitfor while











Haupt | Fügen Sie Referat | Kontakt | Impressum | Nutzungsbedingungen







Neu artikel