Know-how für Terms-Produkte TermsProducts-Logo

Inhalt  Terms-Homepage  Voriges Kapitel  Vorige Seite  Nächste Seite  Nächstes Kapitel  Kapitel:  1  2  3  4  5   6   7   8


3.2 Shell-Skripte mit der bash

Um die Terms97801-Shellskripte unter Linux zu verwenden müssen ein paar kleine Änderungen vorgenommen werden. Der Grund hierfür liegt darin, dass es auf Linux-Systemen keine sh (bourne-shell) vorhanden ist, wie auf System V üblich, sondern die bash verwendet wird.
Bei der bash weicht insbesondere der echo-Befehl in seiner Syntax von der sh ab.
Während bei der sh der echo-Befehl Backslash-Ersetzungen automatisch vornimmt, muss bei der bash hierfür die Option -e angegeben werden. Zur Unterdrückung des Zeilenvorschubs wird in der bash die Option -n angegeben, während bei der sh dies durch ein \c erreicht wird.

Die Terms97801-eigene Escape-Sequenz zum Starten eines Programms wird unter der sh mit folgender Anweisung bewirkt:

echo "\033XNnotepad\033\\"'\c'

Unter der bash von Linux sieht die Anweisung dann so aus:

echo -e -n "\033XNnotepad\033\\"

Bei den meisten Shell-Skripten für Terms97801 ist dies die einzige Änderung. Nur in ganz speziellen Fällen, wie z.B. tls (terms ls) sind weitere Korrekturen notwendig. Dort wird der ls-Befehl mit sehr speziellen Optionen aufgerufen, die so unter der bash nicht gültig sind. Desweiteren wird in der sh der nawk (new awk) aufgerufen, weil der Standard-awk Probleme mit deutschen Umlauten hat. Unter Linux kann der awk auch Umlaute verarbeiten, weswegen es konsequenterweise auch keinen nawk gibt.

Die Terms97801-Skripte für Linux gibt es hier als Download (25kB).

Inhalt  Terms-Homepage  Voriges Kapitel  Vorige Seite  Nächste Seite  Nächstes Kapitel  Kapitel:  1  2  3  4  5   6   7   8