Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ex(1) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ed(1)

edit(1)

vi(1)

ex(1)                                                                 ex(1)

NAME
     ex - Zeilenorientierter Editor

SYNTAX
     ex [option ...] [datei ...]

BESCHREIBUNG
     ex ist ein zeilenorientierter Texteditor. ex bietet Ihnen verschiedene
     Bearbeitungsmodi.

     ⊕  Im ex-Eingabe-Modus können Sie direkt Text eingeben.

     ⊕  Im ex-Kommando-Modus können Sie Kommandos eingeben, um zum Beispiel

        -  die Schreibmarke zu positionieren

        -  Textmuster mit regulären Ausdrücken zu suchen (und zu ersetzen)

        -  in eine andere Datei zu wechseln

        -  eine Shell aufzurufen.

     Außerdem können Sie vom zeilenorientierten Editor ex in den bild-
     schirmorientierten Editor vi wechseln.

   Aufbau dieser Beschreibung

     Nach der Beschreibung des Aufrufs von ex auf Reliant UNIX Ebene finden
     Sie folgende Abschnitte:

     ⊕  Arbeitsweise des ex

        -  Modi des ex

        -  Editor-Puffer sichern und ex verlassen

        -  Voreinstellung

        -  Aktuelle und sekundäre Datei

        -  Reguläre Ausdrücke

        -  Ersetzungszeichenketten

        -  Puffer

        -  Fehler- und Signalbehandlung








Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     ⊕  ex-Kommandos

        -  Adressen

        -  Parameter

        -  Kommandos

     ⊕  ex-Optionen

OPTIONEN
     -s   (s - silent) Alle interaktiven Ausgaben des Editors werden unter-
          drückt. Die Option -s setzen Sie, wenn ex seine Kommandos aus
          einem Kommandoskript lesen soll.

          Die Option -s ersetzt die alte Option -.

     -t markierung
          (t - tag) Die Datei mit markierung wird von ex zum Editieren auf-
          gerufen. ex positioniert dann die Zeile mit der Definition der
          Markierung in der Mitte des Bildschirms. Die Suchzeichenketten
          für die Definitionen müssen in der Datei tags im gleichen Ver-
          zeichnis enthalten sein. Diese Option wird z. B. von C-Program-
          mierern dazu verwendet, den Editor beim Aufruf auf die Definition
          einer Funktion oder eines Makros zu positionieren. Die dafür
          benötigte tags-Datei muß dazu vorher mit dem Kommando ctags(1)
          erzeugt worden sein.

     -r datei
          (r - recover) Stellt Ihre ex-Sitzung von datei wieder her, falls
          das System oder ex während der Sitzung abgestürzt ist.

          Bei einem Absturz des Systems oder des ex-Editors werden die
          Änderungen, die nur im Editor-Puffer stehen, nicht in die Datei
          geschrieben. Reliant UNIX versucht jedoch den Inhalt des Puffers
          zu retten, indem eine Kopie des Pufferinhalts angelegt wird,
          sofern dies möglich ist. datei wird mit den Änderungen, die Sie
          vor dem Absturz gemacht haben, in den vi-Puffer geholt. Sie kön-
          nen nun die Datei weiter editieren oder die Änderungen in eine
          Datei schreiben.

     -L   Nach einem Absturz des Systems oder des ex-Editors wird eine
          Liste aller geretteten Dateien ausgegeben.

     -R   (R - read-only) datei wird nur zum Lesen geöffnet. Damit können
          Sie ein versehentliches Überschreiben von datei verhindern.
          Jedoch können Sie den Pufferinhalt im Readonly-Modus in eine
          Datei mit anderem Namen schreiben.

          Vorsicht:  Die Datei kann im ex-Kommando-Modus mit w! dennoch
                     überschrieben werden.



Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     -v   (v - vi) Der Editor vi wird aufgerufen. Eine ausführliche
          Beschreibung des vi finden Sie unter vi(1).

     -c kommando
          Positioniert beim Aufruf des ex auf eine bestimmte Zeile der zu
          editierenden Datei oder führt ein ex-Kommando aus. Wenn Sie auf
          eine Zeile positionieren, steht die gewünschte Zeile danach in
          der Mitte des Bildschirms. Wenn Sie ein ex-Kommando ausführen
          lassen, wird nach Ausführung des ex-Kommandos auf die letzte
          Zeile der Datei positioniert - falls das ex-Kommando keine Posi-
          tionierung bewirkt (z. B. Suchen).

          kommando nicht angegeben:

          ex positioniert auf das Ende der Datei.

          kommando angegeben:

          kommando kann entweder eine Zeilenangabe (n) sein, ein Suchkom-
          mando (/muster) oder ein sonstiges Kommando des ex (siehe EX-
          KOMMANDOS). Es wird beim Aufruf des ex ausgeführt:

          n    n ist eine ganze Zahl. ex positioniert auf die n-te Zeile
               der Datei.

          /muster
               ex positioniert auf die Zeile, die muster enthält. Falls
               muster Sonderzeichen enthält, müssen Sie die Sonderzeichen
               entwerten, damit die Shell diese nicht interpretiert.

          'ex-kommando'
          "ex-kommando"
               ex-kommando kann ein beliebiges ex-Kommando sein. Das ex-
               Kommando muß in einfachen Hochkommas oder Anführungszeichen
               eingeschlossen werden, damit es von der Shell nicht inter-
               pretiert wird. Falls nicht schon durch das ex-Kommando posi-
               tioniert wird, positioniert der ex auf die letzte Zeile der
               Datei.

               Beispiel:

               Nach dem Aufruf des ex mit

               ex -c /Dienstag termine

               wird die Datei termine geöffnet und die Schreibmarke auf die
               erste Zeile der Datei positioniert, die das Wort Dienstag
               enthält [siehe vi(1)].






Seite 3                      Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     -x   Verschlüsselungsoption: ex führt beim Aufruf das Kommando X auf
          und fragt Sie nach einem Schlüssel. Dieser Schlüssel wird dann
          zum Ent- und Verschlüsseln von Text durch den Algorithmus des
          Kommandos crypt verwendet. ex klärt ab, ob der einzulesende Text
          verschlüsselt ist oder nicht. Die temporäre Pufferdatei wird
          ebenfalls mit einer Transformation des eingegebenen Schlüssels
          codiert [siehe crypt(1)].

     -C   Verschlüsselungsoption: wie -x, nur daß ex das Kommando C aus-
          führt. Das Kommando C entspricht dem Kommando X mit dem Unter-
          schied: es wird angenommen, daß jeder zu lesender Text verschlüs-
          selt ist [siehe crypt(1)].

     datei
          Name der Datei, die Sie editieren möchten. Wenn Sie mehrere
          Dateien angeben, werden sie in der Reihenfolge bearbeitet, in der
          Sie diese angegeben haben. Mit dem ex-Kommando n wechseln Sie in
          die nächste Datei.

          datei nicht angegeben:

          ex öffnet einen leeren Editor-Puffer, in den Sie Text schreiben
          können. Erst beim Zurückschreiben des Pufferinhalts mit w (write)
          in eine Datei oder durch ein f-Kommando bestimmen Sie deren
          Namen.

          Vorsicht:  Enthält Ihre Datei Nullbytes, dann werden diese von ex
                     beim Lesen weggeworfen. Eine von ex geschriebene Datei
                     enthält keine Nullbytes.

ARBEITSWEISE
     ex arbeitet immer mit einem Editor-Puffer. Bei Beginn einer ex-Sitzung
     wird eine Arbeitskopie der Datei, die Sie bearbeiten, im Editor-Puffer
     angelegt. Alle Ihre Änderungen werden zunächst im Editor-Puffer vorge-
     nommen. Sie werden erst gesichert, wenn Sie den Pufferinhalt mit w
     (write) in die Originaldatei zurückschreiben. Danach können Sie ex mit
     q (quit) verlassen.

     Wenn Sie ex verlassen wollen, ohne die Änderungen in die Orginaldatei
     zurückzuschreiben, müssen Sie q! eingeben, ohne ein vorheriges w.

     Ist in den Eingabedateien das ASCII-Zeichen NUL (Nullbyte) [siehe
     ascii(5)] enthalten, so wird es gelöscht; in den Ausgabedateien kann
     es daher nicht enthalten sein.










Seite 4                      Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

   Modi des ex

     ex bietet Ihnen zwei Modi zur Bearbeitung einer Datei:

     -  den ex-Kommando-Modus und

     -  den ex-Eingabe-Modus.

     Zusätzlich können Sie von ex in den vi wechseln, in dem wieder ver-
     schiedene Arbeitsmodi zur Verfügung stehen (ausführlicher siehe vi,
     Modi des vi).

     Nach dem Aufruf befindet ex sich im Kommando-Modus, den Sie am Bereit-
     zeichen Doppelpunkt : am Bildschirm erkennen. Mit den Kommandos a
     (append), i (insert) und c (change) wechseln Sie in den Eingabe-Modus,
     in dem Sie Text im Puffer ergänzen und ändern können (siehe EX-
     KOMMANDOS).

     Im Eingabe-Modus werden alle folgenden Eingabezeichen, auch verschie-
     dene nicht-druckbare Zeichen, in den Puffer geschrieben. Kommandos
     werden im Eingabe-Modus nicht als solche interpretiert. Verlassen kön-
     nen Sie den Eingabe-Modus, indem Sie in der ersten Spalte einer neuen
     Zeile einen Punkt . eingeben und danach RETURN drücken.

   Editor-Puffer sichern und ex verlassen

     Um den Editor-Puffer zu sichern oder den ex zu verlassen, muß sich der
     ex im ex-Kommandomodus befinden.

     Mit folgendem Kommando sichern Sie den Inhalt Ihres Editor-Puffers in
     die editierte oder eine angegebene Datei:

     w [datei]
          (w - write) Der Inhalt des Editor-Puffers wird in die angegebene
          Datei gesichert.

          datei nicht angegeben:

          Der Inhalt des Editor-Puffers wird in die editierte Datei
          geschrieben.

     Um den ex zu verlassen, haben Sie folgende Möglichkeiten:

     q    (q - quit) ex verlassen. Funktioniert nur, falls noch keine Ände-
          rungen am Editor-Puffer vorgenommen wurden oder der geänderte
          Editor-Puffer in eine Datei gesichert wurde.

     q!   (q - quit) ex verlassen; am Editor-Puffer vorgenommene Änderungen
          gehen verloren.

     x    ex verlassen und den geänderten Editor-Puffer in die editierte
          Datei schreiben.


Seite 5                      Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     wq [datei]
          (wq - write and quit) ex verlassen und den geänderten Editor-
          Puffer in die angegebene Datei datei schreiben.

          datei nicht angegeben:

          Der Inhalt des Editor-Puffers wird in die editierte Datei
          geschrieben.

          Vorsicht:

          ex gibt keine Warnung aus, wenn Sie beim Verlassen des Editors
          noch Text in benannten Puffern haben, die Sie nicht verwendet
          haben. Der Text ist unwiederbringlich verloren.

   Voreinstellung

     Sie können den ex in begrenztem Rahmen an Ihre Bedürfnisse und Gewohn-
     heiten anpassen. Dazu müssen Sie das ex-Kommando se (set) verwenden,
     mit dem Sie bestimmte Optionen setzen oder verändern können (siehe
     EX-OPTIONEN). Diese Änderungen gelten in der aktuellen Sitzung. Wie
     Sie diese Änderungen dauerhaft machen können, ist beschrieben bei vi,
     Voreinstellung des vi.

   Aktuelle und sekundäre Datei

     Die Datei, bzw. deren Kopie, die im Augenblick editiert wird, wird als
     aktuelle Datei bezeichnet. Die sekundäre Datei ist die Datei, die
     zuletzt bei einem Editier-Kommando angegeben wurde. Falls die sekun-
     däre Datei zur aktuellen Datei wurde, wird die vorhergehende aktuelle
     Datei zur sekundären Datei. Die aktuelle Datei können Sie mit dem Pro-
     zentzeichen %, die sekundäre Datei mit dem Nummernzeichen # angeben;
     in Dateinamen wird % durch den Namen der aktuellen Datei und # durch
     den Namen der sekundären Datei ersetzt.

     Beispiel:

          w %.bak

          sichert die aktuelle Datei in eine Datei mit dem gleichen Namen,
          aber der Endung .bak.

   Reguläre Ausdrücke

     Die Bedeutung von Sonderzeichen in regulären Ausdrücken hängt bei ex
     davon ab, ob die Option magic gesetzt ist (vgl. EX-OPTIONEN).

     magic gesetzt:

     zeichen
          Ein einfaches Zeichen steht für sich selbst. Die folgenden Zei-
          chen sind keine einfachen Zeichen, sondern Metazeichen:


Seite 6                      Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

          _________________________________________________________________
         |   ^  |  (Dach) am Anfang eines Musters                         |
         |______|_________________________________________________________|
         |   $  |  (Dollar-Zeichen) am Ende eines Musters                 |
         |______|_________________________________________________________|
         |   *  |  (Stern) überall außer am Anfang eines Musters          |
         |______|_________________________________________________________|
         |   .  |  (Punkt) an beliebiger Stelle in einem Muster           |
         |______|_________________________________________________________|
         |   [  |  (öffnende eckige Klammer) an beliebiger Stelle in einem|
         |      |  Muster                                                 |
         |______|_________________________________________________________|
         |   ~  |  (Tilde) an beliebiger Stelle in einem Muster           |
         |______|_________________________________________________________|

          Metazeichen haben eine besondere Bedeutung und müssen durch einen
          Gegenschrägstrich \ entwertet werden, wenn Sie ihre Sonderbedeu-
          tung verlieren sollen.

     ^    Am Anfang eines Musters steht ^ für den Zeilenanfang.

     $    Am Ende eines Musters steht $ für das Zeilenende.

     .    Ein beliebiges Zeichen.

     \<
     \>   Die Zeichen \< passen zum Beginn eines Wortes. Das Wort muß dabei
          mit einem Buchstaben, einer Ziffer oder einem Unterstreichungs-
          zeichen  beginnen; vor dem Wort muß entweder der Zeilenanfang
          stehen oder ein Zeichen, das nicht zu den oben aufgeführten
          gehört. Die Zeichen \> passen zum Ende eines Wortes.

     [zeichenkette]
          Ein beliebiges Zeichen aus zeichenkette, wobei zeichenkette eine
          nicht leere Folge von Zeichen ist. Innerhalb von zeichenkette
          gibt es folgende Sonderbedeutungen:

          -  Ein Bindestrich - zwischen zwei Zeichen definiert einen
             Bereich, zum Beispiel [a-z] paßt zu a, z und allen Zeichen,
             die in der ASCII-Sortierreihenfolge dazwischen liegen.

          -  Ein Dach ^ als erstes Zeichen in zeichenkette kehrt die Bedeu-
             tung von [zeichenkette] um: Ein beliebiges Zeichen, das nicht
             in zeichenkette enthalten ist.

          Diese Sonderbedeutungen können durch einen Gegenschrägstrich auf-
          ghoben werden.

     *    Null-, ein- oder mehrmaliges Auftreten des vorausgehenden regulä-
          ren Ausdrucks.




Seite 7                      Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     ~    Paßt zu der Ersetzungszeichenkette, die beim letzten s-Kommando
          (substitute, siehe EX-KOMMANDOS) verwendet wurde.

     \(muster\)
          Ein regulärer Ausdruck muster kann in durch Gegenschrägstrich \
          entwertete runde Klammern eingeschlossen werden. Dies dient nur
          dazu, den regulären Ausdruck zu identifizieren, wenn er in Erset-
          zungszeichenketten verwendet werden soll (siehe Ersetzungszei-
          chenketten).

     rs   Eine Folge rs von zwei regulären Ausdrücken r und s ist wieder
          ein regulärer Ausdruck. rs paßt zu allen Zeichenketten, die aus
          einer zu r passenden Zeichenkette, gefolgt von einer zu s passen-
          den Zeichenkette, bestehen.

     nomagic gesetzt:

     Ist nomagic gesetzt, so haben nur folgende Zeichen eine Sonderbedeu-
     tung:

     -  Dach ^ am Anfang eines Musters

     -  Dollar $ am Ende eines Musters sowie

     -  Gegenschrägstrich \

     Folgende Zeichen haben nur dann eine Sonderbedeutung, wenn sie mit
     einem führenden Schrägstrich \ entwertet worden sind:

     -  Punkt .

     -  Stern *

     -  öffnende eckige Klammer [

     -  und Tilde ~

   Ersetzungszeichenketten

     Das kommerzielle Und & (\& bei nomagic) steht für die Zeichenkette, zu
     der das Muster paßt und die daher ersetzt werden soll.

     Das Zeichen Tilde ~ (\~ bei nomagic) wird durch die Ersetzungszeichen-
     kette des letzten s-Kommandos (substitute) ersetzt.

     Die Zeichenkette \n (n ist eine ganze Zahl) wird durch die Zeichen-
     kette ersetzt, zu der das im n-ten Klammernpaar \(...\) enthaltene
     Muster paßt.






Seite 8                      Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     Ist in einer Ersetzungszeichenkette die Zeichenkette \u oder \l ent-
     halten, so wird das erste Zeichen in der Ersetzungszeichenkette, das
     unmittelbar auf \u (upper) oder \l (lower) folgt, in einen Großbuch-
     staben (bei u) bzw. Kleinbuchstaben (bei l) umgewandelt, falls es sich
     bei diesem Zeichen um einen Buchstaben handelt. Mit den Zeichen \U
     oder \L werden alle Buchstaben bis zum Ende der Ersetzungszeichenkette
     bzw. bis zu den Zeichen \e oder \E in Groß- bzw. Kleinbuchstaben umge-
     wandelt.

   Puffer

     Es gibt einen unbenannten und 26 alphabetische Puffer.

     In diese Puffer kann Text kopiert werden (ya - yank) oder wird
     gelöschter Text gesichert (d - delete), der dann mit pu (put) zurück-
     geholt werden kann.

     Die Kommandos d, pu und ya arbeiten mit dem unbenannten Puffer, wenn
     Sie keinen alphabetischen Puffer angeben. D. h. auch wenn Sie z. B.
     bei einer Löschoperation keinen Puffer angeben, wird das Ergebnis
     Ihrer Löschoperation im unbenannten Puffer gesichert.

     Sie können in 26 alphabetischen Puffern Textblöcke sichern. Die Puffer
     werden mit den Kleinbuchstaben a-z oder mit den Großbuchstaben A-Z
     bezeichnet. Verwenden Sie Kleinbuchstaben, wird der alte Pufferinhalt
     mit dem neuen überschrieben, der alte somit gelöscht. Verwenden Sie
     Großbuchstaben, wird der alte Pufferinhalt nicht überschrieben, son-
     dern der neue Text an den alten angehängt.

   Fehler- und Signalbehandlung

     Tritt während einer ex-Sitzung ein Fehler auf, so sendet der ex an die
     Terminals das Zeichen BEL [akustisches Signal; siehe ascii(5)] und
     gibt eine Fehlermeldung aus.

     Bei einem Unterbrechungssignal kehrt ex zusätzlich in den ex-
     Kommando-Modus zurück. Sie können nun ein ex-Kommando eingeben.

     Liest ex die Eingabe aus einer Datei, so wird ex verlassen.

EX-KOMMANDOS
     Im Unterschied zu den meisten vi-Kommandos, die sofort vom vi inter-
     pretiert und ausgeführt werden, müssen ex-Kommandos mit RETURN abge-
     schlossen werden.

     Kommandozeilen, die mit Anführungszeichen " beginnen, werden igno-
     riert. Auf diese Weise können Sie in ein Kommandoskript Kommentarzei-
     len einfügen.






Seite 9                      Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

   Adressen

     Mit einer Adresse geben Sie eine bestimmte Zeile an. Einige ex-Komman-
     dos erwarten eine oder mehrere Adressen, um dann zum Beispiel die
     angegebene Zeile oder den Bereich zwischen zwei angegeben Zeilen ein-
     schließlich zu bearbeiten.

     Für ex existiert zu jedem Zeitpunkt eine aktuelle Zeile. Sie wird
     durch einen Punkt (.) adressiert. Die aktuelle Zeile ist in der Regel
     die Zeile, die zuletzt durch ein Kommando bearbeitet wurde oder auf
     die gezielt (z. B. durch Suchen) positioniert wurde.

     Die Adressen trennen Sie voneinander durch ein Komma (,) oder einen
     Strichpunkt (;). Diese Adressenliste arbeitet ex von links nach rechts
     ab.

     -  Durch das Trennzeichen Strichpunkt (;) wird die zuerst adressierte
        Zeile zur aktuellen Zeile, erst dann wird die nächste Adresse aus-
        gewertet.

     -  Beim Trennzeichen Komma (,) werden alle Adressen von der aktuellen
        Zeile aus ermittelt. Die aktuelle Zeile ändert sich erst bei der
        Durchführung eines Kommandos.

     Wenn Sie bei einem Kommando mehr Adressen angegeben haben, als das
     Kommando erwartet, werden alle Adressen außer der letzten (wenn das
     Kommando eine Zeile als Adresse erwartet) oder den letzten beiden
     (wenn das Kommando einen Zeilenbereich erwartet) ignoriert. Sind bei
     einem Kommando zwei Adressen erforderlich, so muß sich die zuerst
     adressierte Zeile im Puffer vor der danach adressierten Zeile befin-
     den. Wenn Sie keine Adresse angeben, verwendet ex standardmäßig die
     aktuelle Zeile.

     .    aktuelle Zeile des Puffers.

     $    letzte Zeile des Puffers.

     n    n-te Zeile im Puffer. Die Zeilen sind sequentiell von 1 ab durch-
          numeriert.

     'x   die mit dem Buchstaben x markierte Zeile. x muß ein Kleinbuch-
          stabe sein (siehe ex-Kommandos ma bzw. k). 'x ist die Adresse der
          markierten Zeile. Bevor ex ein Positionierkommando durchführt,
          wird die momentan aktuelle Zeile markiert. Mit 2 Hochkommata ''
          können Sie zu ihr zurückkehren.









Seite 10                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     /rA/ Ein einfacher regulärer Ausdruck, in /.../ eingeschlossen [siehe
          expressions(5)], adressiert die erste Zeile, beginnend mit der
          aktuellen Zeile, die eine Zeichenkette enthält, die zu dem regu-
          lären Ausdruck paßt. Falls notwendig, springt ex vom Ende des
          Puffers an seinen Anfang, um die Suche fortzusetzen (siehe EX-
          OPTIONEN, wrapscan). Soll die zu rA passende Zeile nur ausgegeben
          werden, können Sie den zweiten Schrägstrich / weglassen.

          rA nicht angegeben:

          das zuletzt angegebene Suchmuster wird verwendet.

     ?rA? Wie /rA/, nur wird rückwärts gesucht.

     +n
     -n   Beginnt eine Adresse mit Plus- oder Minuszeichen, gefolgt von
          einer Dezimalzahl n (optional), ist die Zeile adressiert, die n
          Zeilen hinter (+) bzw. vor (-) in der aktuellen Zeile liegt. .+3,
          +3 und +++ haben die gleiche Wirkung.

     adr+
     adr- Endet eine Adresse mit einem Plus oder Minus, ist die Zeile
          adressiert, die eine Zeile hinter (+) bzw. vor (-) in der durch
          die Adresse bezeichneten Zeile liegt. Mit - wird die Zeile vor
          der aktuellen Zeile adressiert. Auch am Ende einer Adresse haben
          + und - kumulativen Effekt. Die Adresse ++ adressiert somit die
          zweite Zeile, d. h. die Zeile, die auf die aktuelle Zeile folgt;
          z. B. adressiert 3++ Zeile 5 oder ++ ist gleichbedeutend mit .+2.

     %    Das Prozent-Zeichen % ist gleichbedeutend mit dem Adressenpaar
          1,$, d. h. dem gesamten Puffer.

   Parameter

     Bei den ex-Kommandos werden folgende Parameter benutzt:

     zeile = adresse
          eine bestimmte einzelne Zeile, die Sie in einem der im Abschnitt
          Adressen angegebenen Formate angeben können.

          zeile nicht angegeben:

          der Standardwert Punkt (.) gilt. Punkt (.) ist die aktuelle
          Zeile.










Seite 11                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     bereich = adresse,adresse
     bereich = adresse;adresse
          Angabe eines Bereiches zwischen zwei Zeilen einschließlich. Die
          Adressen können durch ein Komma (,) oder einen Strichpunkt (;)
          (siehe oben) voneinander getrennt sein. bereich sollten Sie nicht
          zusammen mit einer Zahl n angeben, da sonst die letzte Adresse
          des angegebenen Bereiches zur Anfangsadresse eines Bereiches
          wird, der einschließlich dieser Zeile n Zeilen umfaßt. Damit ist
          auf jeden Fall ein Bereich adressiert, der hinter dem gemeinten
          bereich liegt. In der Syntax der ex-Kommandos ist dies berück-
          sichtigt.

          bereich nicht angegeben:

          Der Standardwert .,. gilt.

          .,. bedeutet: nur die aktuelle Zeile.

     n    eine positive ganze Zahl. Mit n geben Sie die Anzahl der zu bear-
          beitenden Zeilen an.

          n nicht angegeben:

          der Standardwert 1 gilt.

     zusatz
          eines oder eine Kombination der ex-Kommandos # (siehe nu), p und
          l. Diese Kommandos geben eine Zeile in einem bestimmten Format
          aus und werden im Anschluß an das vorangestellte ex-Kommandos
          ausgeführt.

     <blank>
          Die Leerzeichen müssen nicht in jedem Fall eingegeben werden.
          Hier sind sie aus Gründen der Übersichtlichkeit nicht als optio-
          nal angegeben.

     Diese Parameter können mit einer beliebigen Zahl von Plus- oder Minus-
     zeichen kombiniert werden.
















Seite 12                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

   Kommandos

     Übersicht der ex-Kommandos und ihrer Abkürzungen
     _______________________________________________________________________
    | <CTRL-D>|  (scroll)    |  n Zeilen ausgeben, wobei n=$scroll         |
    |_________|______________|_____________________________________________|
    | ab      |  abbrev      |  Abkürzung definieren                       |
    |_________|______________|_____________________________________________|
    | a       |  append      |  Text-Zeile anfügen                         |
    |_________|______________|_____________________________________________|
    | ar      |  args        |  Argumentliste der Kommandozeile ausgeben   |
    |_________|______________|_____________________________________________|
    | c       |  change      |  Text-Zeile ändern                          |
    |_________|______________|_____________________________________________|
    | C       |  encryption  |  Text verschlüsseln                         |
    |_________|______________|_____________________________________________|
    | co      |  copy        |  Text-Bereich kopieren                      |
    |_________|______________|_____________________________________________|
    | d       |  delete      |  Text-Bereich löschen                       |
    |_________|______________|_____________________________________________|
    | e       |  edit        |  editierte Datei wechseln                   |
    |_________|______________|_____________________________________________|
    | f       |  file        |  aktuellen Dateinamen ausgeben              |
    |_________|______________|_____________________________________________|
    | g       |  global      |  für alle Zeilen, die zu /rA/ passen, Kom-  |
    |         |              |  mando ausführen                            |
    |_________|______________|_____________________________________________|
    | i       |  insert      |  Text-Zeile einfügen                        |
    |_________|______________|_____________________________________________|
    | j       |  join        |  Zeilen verbinden                           |
    |_________|______________|_____________________________________________|
    | l       |  list        |  Text mit nicht-druckbaren Zeilen ausgeben  |
    |_________|______________|_____________________________________________|
    | map     |  ---         |  Makros definieren                          |
    |_________|______________|_____________________________________________|
    | k       |  mark        |  Zeilen markieren                           |
    |_________|______________|_____________________________________________|
    | m       |  move        |  Text-Bereich verschieben                   |
    |_________|______________|_____________________________________________|
    | ma      |  mark        |  Zeilen markieren                           |
    |_________|______________|_____________________________________________|
    | n       |  next        |  nächste Datei editieren                    |
    |_________|______________|_____________________________________________|
    | nu      |  number      |  Zeilen numerieren und ausgeben             |
    |_________|______________|_____________________________________________|
    | #       |  number      |  Zeilen numerieren und ausgeben             |
    |_________|______________|_____________________________________________|
    | pre     |  preserve    |  Editor-Puffer retten                       |
    |_________|______________|_____________________________________________|





Seite 13                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     _______________________________________________________________________
    | p       |  print       |  Text-Bereich ausgeben                      |
    |_________|______________|_____________________________________________|
    | q       |  quit        |  Editor verlassen                           |
    |_________|______________|_____________________________________________|
    | r       |  read        |  Kopie einer Datei in Puffer einlesen       |
    |_________|______________|_____________________________________________|
    | rec     |  recover     |  Datei nach Systemabsturz wiederherstellen  |
    |_________|______________|_____________________________________________|
    | rew     |  rewind      |  Argumentliste rücksetzen (vgl. ar)         |
    |_________|______________|_____________________________________________|
    | se      |  set         |  Optionen ausgeben und setzen               |
    |_________|______________|_____________________________________________|
    | sh      |  shell       |  Shell aufrufen                             |
    |_________|______________|_____________________________________________|
    | so      |  source      |  Kommandos aus Datei lesen                  |
    |_________|______________|_____________________________________________|
    | s       |  substitute  |  suchen und ersetzen                        |
    |_________|______________|_____________________________________________|
    | unab    |  unabbrev    |  Definition einer Abkürzung mit ab aufheben |
    |_________|______________|_____________________________________________|
    | u       |  undo        |  Kommando rückgängig machen                 |
    |_________|______________|_____________________________________________|
    | unm     |  unmap       |  Makrodefinition mit map aufheben           |
    |_________|______________|_____________________________________________|
    | v       |  ---         |  wie g, aber für alle Zeilen, die nicht zu  |
    |         |              |  /rA/ passen                                |
    |_________|______________|_____________________________________________|
    | ve      |  version     |  Versionsnummer des Editors ausgeben        |
    |_________|______________|_____________________________________________|
    | vi      |  visual      |  in vi wechseln                             |
    |_________|______________|_____________________________________________|
    | w       |  write       |  Editor-Puffer in Datei schreiben           |
    |_________|______________|_____________________________________________|
    | x       |  exit        |  Editor verlassen mit Sichern des Editor-   |
    |         |              |  Puffers                                    |
    |_________|______________|_____________________________________________|
    | X       |  encryption  |  Text verschlüsselen                        |
    |_________|______________|_____________________________________________|
    | ya      |  yank        |  Zeilen in Puffer kopieren                  |
    |_________|______________|_____________________________________________|
    | z       |  (window)    |  Text-Bereich ausgeben                      |
    |_________|______________|_____________________________________________|
    | !       |  (escape)    |  Shell-Kommando ausführen                   |
    |_________|______________|_____________________________________________|
    | & s     |  (resubst)   |  wiederholen des letzten substitute-        |
    |         |              |  Kommandos                                  |
    |_________|______________|_____________________________________________|






Seite 14                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     _______________________________________________________________________
    | <       |  (lshift)    |  Text-Bereich nach links verschieben        |
    |_________|______________|_____________________________________________|
    | >       |  (rshift)    |  Text-Bereich nach rechts verschieben       |
    |_________|______________|_____________________________________________|
    | =       |  (line no)   |  Zeilennummer ausgeben                      |
    |_________|______________|_____________________________________________|

     Kein Kommando angegeben:
          Wenn Sie nur zeile oder bereich angeben, so wird automatisch p
          (print) ausgeführt. Eine leere Eingabe bewirkt, daß die darauf-
          folgende Zeile ausgegeben wird (wie bei .+1p).

     <CTRL-D>
          (ASCII EOT) gibt die nächsten n Zeilen aus, wobei n den Wert der
          ex-Option scroll hat.

     ab wort text
          (ab - abbreviate) Nur im vi wirksam!

          Wenn Sie im vi-Eingabe-Modus wort als komplettes Wort (d. h.
          nicht nur als Teil eines Wortes) eingeben, wird es durch die Zei-
          chenkette text ersetzt. Falls text Sonderzeichen, z. B. RETURN,
          enthalten soll, müssen Sie dem Sonderzeichen CTRL-V voranstellen.

     zeile a
          (a - append) ex wechselt in den Eingabe-Modus; der Text wird hin-
          ter der angegebenen Zeile eingefügt. Bei zeile gleich 0 wird der
          Text ganz an den Anfang des Puffers gesetzt. Die aktuelle Zeile
          ist die zuletzt eingegebene bzw., falls keine Eingabe erfolgte,
          die adressierte Zeile.

          Die Eingabe wird mit einem Punkt (.) in der ersten Spalte been-
          det.

     ar   (ar - arguments) Die Argumentliste aus der Kommandozeile des ex-
          Aufrufes wird, eingeschlossen in eckigen Klammern [...], ausgege-
          ben.

     zeile c n
     bereich c
          (c - change) ex wechselt in den Eingabe-Modus; es werden n Zeilen
          bzw. die Zeilen im angegebenen Bereich bereich durch die eingege-
          benen Textzeilen ersetzt.

          Die letzte der eingegebenen Zeilen wird zur aktuellen Zeile; wer-
          den keine Textzeilen eingegeben, so wird der angegebene Bereich
          gelöscht, d. h. c wirkt wie d (delete). Die Eingabe wird mit
          einem Punkt (.) in der ersten Spalte beendet.





Seite 15                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     C    (C - encryption) Das Kommando C entspricht X mit einem Unter-
          schied: Es wird angenommen, daß jeder mit den Kommandos e und r
          zu lesende Text verschlüsselt ist (siehe Option -C).

     bereich co zeile zusatz
          (co - copy) Eine Kopie des angegebenen Bereiches bereich wird
          hinter die Zeile zeile kopiert; hat zeile die Zeilennummer 0,
          wird bereich an den Anfang des Puffers kopiert.

     zeile d puffer n
     bereich d puffer
          (d - delete) Die Zeilen im Bereich bereich bzw. n Zeilen von der
          angegebenen Zeile zeile ab werden gelöscht. Wird der Name eines
          Puffers puffer angegeben, so werden die gelöschten Zeilen in die-
          sem Puffer gesichert. Mit dem ex-Kommando pu können Sie auf die-
          sen Puffer zugreifen. Die erste auf die gelöschten Zeilen fol-
          gende Zeile wird zur aktuellen Zeile; befanden sich die gelösch-
          ten Zeilen am Ende des Puffers, so wird die letzte Zeile im Puf-
          fer zur aktuellen Zeile.

     e [+zeile] datei
          (e - edit) Die Datei datei wird editiert. Wurden am aktuellen
          Editor-Puffer seit dem letzten w-Kommando (write) Änderungen vor-
          genommen, so wird eine Warnung ausgegeben und das Kommando nicht
          ausgeführt. Sie können jedoch die Ausführung des e-Kommandos
          erzwingen, indem Sie dem e ein Ausrufezeichen nachstellen: e!
          datei. Die letzte Zeile des Puffers wird zur aktuellen Zeile.
          Wird dieses Kommando jedoch von vi aus aufgerufen, so wird die
          erste Zeile im Puffer zur aktuellen Zeile.

          +zeile   Die angegebene zeile wird zur aktuellen Zeile. zeile
                   kann sein:

                   -  eine Zeilennummer n

                   -  das Dollarzeichen $ (Dateiende)

                   -  ein regulärer Ausdruck in der Form /rA oder ?rA.

     f [name]
          (f - file) Ausgabe des aktuellen Dateinamens sowie Informationen,
          wie z. B. die Zahl der Zeilen und die Position der aktuellen
          Zeile.

          name angegeben:

          name wird zum aktuellen Dateinamen







Seite 16                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     bereich g/rA/kommandoliste
          (g - global) Zunächst werden alle Zeilen innerhalb des Bereiches
          bereich markiert, zu denen das durch rA angegebene Muster paßt.
          Dann wird das angegebene Kommando kommando bzw. werden die in
          kommandoliste enthaltenen Kommandos ausgeführt, wobei die jeweils
          markierte Zeile zur aktuellen Zeile wird.

          Die Kommandos in kommandoliste können in mehreren Zeilen stehen,
          vorausgesetzt, die Neue-Zeile-Zeichen sind mit einem Gegenschräg-
          strich \ entwertet. Ist kommandoliste leer, so werden alle Zeilen
          ausgegeben. Die Kommandos a(ppend), c(hange), und i(nsert) sind
          erlaubt; am Ende von kommandoliste können Sie den abschließenden
          Punkt weglassen. Das visual-Kommando ist ebenfalls erlaubt und
          liest die Eingabe vom Terminal.

          Folgende Kommandos dürfen in kommandoliste nicht enthalten sein:
          global und undo.

          Folgende Optionen dürfen in kommandoliste nicht enthalten sein:
          autoprint, autoindent und report.

          Beispiel:

          1,$g/^\*/s//+/

          Von Zeile 1 bis Dateiende ($) werden in der ersten Spalte ^ alle
          * durch das Substitute-Kommando (s) durch ein Plus-Zeichen (+)
          ersetzt.

     zeile i
          (i - insert) ex wechselt in den Eingabe-Modus; der eingegebene
          Text wird vor der angegebenen Zeile eingefügt. Die letzte der
          eingegebenen Zeilen wird zur aktuellen Zeile. Erfolgt keine Ein-
          gabe, so wird die Zeile vor der adressierten Zeile zeile zur
          aktuellen Zeile. Die Eingabe wird mit einem Punkt (.) in der
          ersten Spalte beendet.


















Seite 17                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     zeile j n zusatz
     bereich j zusatz
          (j - join) Faßt die mit bereich angegebenen Zeilen bzw. n Zeilen
          von zeile ab zu einer Zeile zusammen. Zwischen den ehemaligen
          Zeilen steht mindestens ein Leerzeichen. Wird eine Zeile durch
          einen Punkt abgeschlossen, so werden zwei Leerzeichen eingesetzt.
          Beginnt die anzufügende Zeile mit einer schließenden runden Klam-
          mer ), wird kein Leerzeichen eingefügt. Zusätzliche Leer- und
          Tabulatorzeichen am Anfang einer Zeile entfallen.

          Wird an das Kommando j ein Ausrufezeichen (j!) angehängt, werden
          an die Nahtstellen zwischen zwei verbundenen Zeilen keine Leer-
          zeichen gesetzt.

     zeile l n zusatz
     bereich l zusatz
          (l - list) Die angegebenen Zeilen werden ausgegeben; Tabulator-
          zeichen werden durch ^I ersetzt; das Ende jeder Zeile wird durch
          ein Dollarzeichen $ markiert. Der einzige sinnvolle zusatz ist
          hier #, wenn den Zeilen ihre Zeilennummern vorangestellt werden
          sollen. Die letzte der ausgegebenen Zeilen wird zur aktuellen
          Zeile.

     map x kommandos                                               Format 1
     map! x text                                                   Format 2

          Nur im vi wirksam!

          Format 1: Makrodefinition für vi-Kommando-Modus

          Definieren von Makros, die im vi-Kommando-Modus verwendet werden
          können. Beim ersten Argument x handelt es sich um ein einzelnes
          Zeichen oder die Zeichenkette #n, wobei n eine Ziffer ist, mit
          der die Funktionstaste n angegeben wird. Wird im vi-Kommando-
          Modus dieses Zeichen bzw. diese Funktionstaste eingegeben, so
          verhält vi sich so, als ob kommandos eingegeben wird. kommandos
          wird dabei als Folge von vi-Kommandos interpretiert. Sind in kom-
          mandos Sonderzeichen, Leerzeichen oder Neue-Zeile-Zeichen enthal-
          ten, so müssen sie mit einem CTRL-V entwertet werden.

          Beispiel 1:

          Sie wollen ein Makro definieren, das in der gesamten Datei das
          Zeichen Stern * am Zeilenanfang (Spalte 1) durch ein Leerzeichen
          <blank> ersetzt. Der Name dieses Makros soll "Stern" * sein.
          Damit Sie dieses Makro stets zur Verfügung haben, machen Sie in
          Ihrer .exrc-Datei (siehe Voreinstellung des ex) folgenden Ein-
          trag:

          :map * :1,$s/^\*/ /




Seite 18                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

          Beispiel 2:

          Sie möchten die Funktionstaste <F1> belegen. Es soll die nächste
          Zeile gesucht werden, an deren Anfang ein bestimmter regulärer
          Ausdruck rA steht; diese Zeile soll dann automatisch gelöscht
          werden. Dazu geben Sie (aus dem vi-Kommando-Modus) ein:

          :map CTRL-V <F1> /^rA CTRL-V RETURN dd RETURN

          Format 2: Makrodefinition für vi-Eingabe-Modus

          Definieren von Makros, die im vi-Eingabe-Modus verwendet werden
          können (vgl. Format 1). Jedes im vi-Eingabe-Modus eingegebene x
          wird durch text ersetzt. (Bei dem Kommando ab wird x nur dann
          ersetzt, wenn es allein steht.)

          Wenn x nicht durch text ersetzt werden soll, muß x ein CTRL-V
          vorangestellt werden.

          Format 1 und Format 2:

          Ein definiertes Makro können Sie mit:

          unmap x bzw.

          unmap! x

          wieder aufheben.

     zeile ma x
     zeile k x
          (ma/k - mark) zeile wird mit x markiert; x muß ein einzelner
          Kleinbuchstabe sein, dem ein Leer- oder Tabulatorzeichen vorange-
          stellt ist. An der Adresse der aktuellen Zeile ändert sich
          nichts.

     bereich m zeile
          (m - move) bereich wird hinter zeile versetzt. Die erste der ver-
          setzten Zeilen wird zur aktuellen Zeile.

     n [datei ...]
          datei nicht angegeben:

          (n - next) Die nächste der in der Kommandozeile aufgeführten
          Dateien (Argumentliste) wird editiert (vgl. f und ar). Wurden am
          aktuellen Editor-Puffer seit dem letzten w-Kommando (write) Ände-
          rungen vorgenommen, so wird eine Warnung ausgegeben und das Kom-
          mando nicht ausgeführt. Sie können jedoch die Ausführung des n-
          Kommandos erzwingen, indem Sie dem n ein Ausrufezeichen nachstel-
          len: n!.




Seite 19                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

          datei angegeben:

          Die bisherige Argumentenliste wird durch die angegebene(n)
          Datei(en) ersetzt; die erste angegebene Datei wird editiert.

     zeile nu n zusatz
     bereich nu zusatz
     zeile # n zusatz
     bereich # zusatz
          (nu - number) Die Zeilen werden, versehen mit den entsprechenden
          Zeilennummern, ausgegeben. Der einzige hier sinnvolle Zusatz ist
          l. Die letzte der ausgegebenen Zeilen wird zur aktuellen Zeile.

     pre  (pre - preserve) Der Inhalt des aktuellen Puffers wird gesichert,
          als ob es zu einem Absturz des Systems gekommen wäre. pre wird in
          Notfällen verwendet, wenn z. B. w (write) nicht ausgeführt werden
          kann, weil die Platte voll ist, und keine andere Möglichkeit zur
          Rettung des Pufferinhaltes vorhanden ist.

     zeile p n
     bereich p
          (p - print) Die angegebenen Zeilen werden ausgegeben, wobei
          nicht-druckbare Zeichen als Steuerzeichen in der Form ^x ausgege-
          ben werden; DEL wird in Form von ^? ausgegeben. Die zuletzt aus-
          gegebene Zeile wird zur aktuellen Zeile.

     zeile pu puffer
          (pu - put) Die mit d (delete) gelöschten oder mit y (yank) in
          einem Puffer gesicherten Zeilen werden hinter der angegebenen
          Zeile zeile eingefügt. puffer ist der Name eines alphabetischen
          Puffers.

          puffer nicht angegeben:

          Der Text wird aus dem unbenannten Puffer geholt.

     q    (q - quit) Der Editor wird verlassen. Wurde der Puffer seit dem
          letzten w-Kommando (write) verändert, so wird eine Warnung ausge-
          geben und q wird nicht ausgeführt. Sie können jedoch die Ausfüh-
          rung des q-Kommandos erzwingen, indem Sie dem q ein Ausrufezei-
          chen nachstellen: q!. Alle noch nicht (mit w) gesicherten Ände-
          rungen am Editor-Puffer gehen dann verloren.

     zeile r [datei]
          (r - read) Eine Kopie von datei wird im Editor-Puffer hinter
          zeile eingelesen. Die Zeilennummer von zeile kann dabei 0 sein;
          die Textzeilen werden dann an den Anfang des Puffers gesetzt.
          Gibt es keine aktuelle Datei (Aufruf von ex ohne Dateinamen) wird
          datei zur aktuellen Datei. Die letzte der eingelesenen Zeilen
          wird zur aktuellen Zeile; im vi wird die erste der eingelesenen
          Zeilen zur aktuellen Zeile.



Seite 20                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

          datei nicht angegeben:

          die aktuelle Datei wird eingelesen.

          Wird statt datei !unixkmdo angegeben, so wird unixkmdo als Reli-
          ant UNIX Kommando interpretiert und an die Shell übergeben. Die
          Ausgabe des Reliant UNIX Kommandos wird in den Puffer eingelesen.

     rec datei
          datei wird nach einem Absturz des Systems oder des Editors wiede-
          rhergestellt.

     rew  (rew - rewind) Die Argumentliste (siehe ar) wird zurückgesetzt,
          und die erste Datei in der Liste wird editiert. Wurde der
          Editor-Puffer seit dem letzten w-Kommando (write) verändert, so
          wird eine Warnung ausgegeben und rew wird nicht ausgeführt. Sie
          können jedoch die Ausführung des rew-Kommandos erzwingen, indem
          Sie dem rew ein Ausrufezeichen nachstellen: rew!. Alle noch nicht
          (mit w) gesicherten Änderungen am Editor-Puffer gehen dann verlo-
          ren.

     se [parameter]
          (se - set) Mit dem set-Kommando können Optionen aufgelistet bzw.
          gesetzt werden. Es gibt zwei Typen von Optionen: Optionen mit
          Boole'schen Werten und Optionen mit nicht-Boole'schen Werten. Ein
          Beispiel für den Boole'schen Typ ist z. B. die Option number. Ist
          sie gesetzt, werden Zeilennummern ausgegeben, ist nonumber
          gesetzt, werden keine Zeilennummern ausgegeben. Ein Beispiel für
          den nicht-Boole'schen Typ ist report. Der Wert dieser Option
          (Standard = 5) bestimmt die Anzahl der Zeilen, die durch ein Kom-
          mando verändert werden muß, damit ex und vi eine Meldung geben.

          parameter

          all  Die Werte aller Optionen werden ausgegeben.

          option?
               Der gegenwärtige Wert der angegebenen Option wird ausgege-
               ben.

          option
               Nur für Optionen mit Boole'schen Werten: die Option wird
               gesetzt.

          nooption
               Nur für Optionen mit Boole'schen Werten: die Option wird
               nicht gesetzt.

          option=wert
               Nur für Optionen mit nicht-Boole'schen Werten: der Option
               wird der Wert wert zugewiesen.



Seite 21                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

          parameter nicht angegeben:

          set gibt diejenigen ex-Optionen aus, deren Werte vom Benutzer
          festgelegt wurden und daher von den Standardwerten abweichen.

          Nähere Informationen über die ex-Optionen finden Sie in EX-
          OPTIONEN.

     sh   Ist die Variable SHELL gesetzt, wird die dort angegebene Shell
          gestartet, sonst sh. Nach Beendigung der Shell wird die Editor-
          sitzung an derselben Stelle fortgesetzt.

     so datei
          Kommandos werden aus datei gelesen und ausgeführt. so-Kommandos
          können ineinander verschachtelt werden.

     zeile s/rA/ersatz/schalter n zusatz
     bereich s/rA/ersatz/schalter zusatz
          (s - substitute) Das erste Auftreten des mit rA (regulärer Aus-
          druck) getroffenen Musters in jeder Zeile des angegebenen Berei-
          ches wird durch die Zeichenkette ersatz ersetzt (siehe Reguläre
          Ausdrücke und Ersetzungszeichenketten). Der angegebene Bereich
          ist entweder bereich oder umfaßt n Zeilen von zeile ab.

          schalter

          g  (g - global) alle Zeichenketten in der Zeile, zu denen rA
             paßt, werden ersetzt.

          c  (c - confirm) zunächst wird die Zeile ausgegeben, wobei die zu
             ersetzende Zeichenkette in der darunterliegenden Zeile durch
             ein ^ markiert wird. Die Eingabe des Buchstabens y bewirkt
             dann, daß die Substitution durchgeführt wird; bei jeder ande-
             ren Eingabe wird das Kommando abgebrochen. Die Zeile, in der
             zuletzt eine Substitution durchgeführt wurde, wird zur aktuel-
             len Zeile.

     una wort
          (una - unabbreviate) wort wird aus der Liste der Abkürzungen
          gestrichen (vgl. ab).

     u    (u - undo) Die mit dem letzten Editierkommando vorgenommenen
          Änderungen werden rückgängig gemacht. g (global) und vi (visual)
          werden in diesem Fall als eigenständige Kommandos betrachtet.
          Kommandos, die die äußere Umgebung verändern (z. B. w (write), e
          (edit) und n (next)) können nicht rückgängig gemacht werden.

          Ein undo-Kommando selbst kann mit u wieder rückgängig gemacht
          werden.

          Bei u gehen alle Markierungen für Zeilen, die geändert und dann
          wieder zurückgeholt wurden, verloren.


Seite 22                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     unm x
     unm! x
          (unm - unmap) Die mit map vorgenommene Definition des Makros x
          wird aufgehoben.

     bereich v/rA/kommandoliste
          (v - vice versa) Hat dieselbe Funktion wie global, nur wird kom-
          mandoliste auf alle Zeilen angewandt, zu denen das Muster rA
          nicht paßt.

     ve   Die Versionsnummer des Editors wird ausgegeben.

     zeile vi [stelle] n
          Bei der angegebenen zeile wird in den vi gewechselt. Der optio-
          nale Parameter stelle kann eines der Zeichen Bindestrich (-) oder
          Punkt (.) sein; wie beim Kommando z wird damit die Position von
          zeile auf dem Bildschirm angegeben. Standard: oberer Rand des
          Bildschirms. Mit n wird die Größe des Bildschirms angegeben;
          standardmäßig hat er die Größe, die über die ex-Option window
          definiert ist. Mit Q wird der vi wieder verlassen und wieder in
          den ex gewechselt. Nähere Information siehe vi(1).

     [bereich] w[!] [datei]                                        Format 1
     [bereich] wq[!] [datei]                                       Format 2

          Format 1: In Datei schreiben

          (w - write) Der angegebene bereich wird in die datei geschrieben,
          wobei die Anzahl der geschriebenen Zeilen und Zeichen ausgegeben
          wird.

          Wird eine (vorhandene) sekundäre Datei angegeben, so wird das
          Kommando nicht ausgeführt, damit die sekundäre Datei nicht verse-
          hentlich überschrieben wird. Die Ausführung von w kann jedoch
          erzwungen werden, indem ein Ausrufezeichen ! angefügt wird: w! #.

          Soll am Ende von datei angefügt werden, so muß das Kommando in
          der Form w>> angegeben werden; existiert datei nicht, so wird
          eine Fehlermeldung ausgegeben.

          Wird statt datei !unixkmdo angegeben, so wird unixkmdo als Reli-
          ant UNIX Kommando interpretiert und an die Shell übergeben; der
          angegebene bereich ist dann für das Kommando die Standardeingabe.

          bereich nicht angegeben:

          die ganze aktuelle Datei wird nach datei geschrieben.







Seite 23                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

          datei nicht angegeben:

          standardmäßig wird die aktuelle Datei verwendet. Wenn weder eine
          aktuelle Datei vorhanden ist noch eine datei angegeben wird, so
          kann w nicht ausgeführt werden.

          Format 2: In Datei schreiben und ex verlassen

          (wq - write and quit) wq hat dieselbe Funktion wie w, auf das q
          folgt; wq! hat dieselbe Funktion wie w!, auf das q folgt.

     x    (exit) Der Editor wird verlassen; wurden seit dem letzten Sichern
          mit w (write) Änderungen vorgenommen, so werden diese zuvor in
          die Datei geschrieben.

     X    (X - encryption) ex fragt Sie nach einem Schlüssel, der bei nach-
          folgenden e, r und w-Kommandos zum Ent- und Verschlüsseln von
          Text verwendet wird. Dabei wird der Algorithmus des Kommandos
          crypt(1) verwendet. Ein leerer Schlüssel schaltet diesen Mecha-
          nismus wieder ab. ex klärt ab, ob der einzulesende Text ver-
          schlüsselt ist oder nicht. Die temporäre Pufferdatei wird eben-
          falls mit einer Transformation des eingegebenen Schlüssels ver-
          schlüsselt (siehe Option -x).

     zeile ya puffer n
     bereich ya puffer
          Der angegebene bereich bzw. n Zeilen von zeile ab werden in den
          angegebenen puffer gesichert.

          puffer nicht angegeben:

          Wird kein Puffer angegeben, so wird der unbenannte Puffer verwen-
          det.

     zeile z [stelle] n
          (window) n Zeilen aus der Umgebung von zeile werden ausgegeben.

          n nicht angegeben:

          n hat den Wert der Variablen window.

          stelle

          Für den optionalen Parameter stelle kann ein Bindestrich (-) oder
          Punkt (.) angegeben werden; das Zeichen - bewirkt, daß die zeile
          an den unteren Rand des ausgegebenen Bereiches gesetzt wird; das
          Zeichen (.) bewirkt, daß sich die Zeile in der Mitte des ausgege-
          benen Bereiches befindet. Die letzte der ausgegebenen Zeilen wird
          zur aktuellen Zeile.





Seite 24                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

          stelle nicht angegeben:

          zeile befindet sich am oberen Rand des ausgegebenen Bereiches.

          Vorsicht:

          ex gibt die gewünschte Anzahl realer Zeilen aus. Sind Zeilen län-
          ger, wie der Bildschirm breit ist, dann kann unter Umständen mehr
          als ein Bildschirm ausgegeben werden.

     ! kommando
          (escape) Die auf das Ausrufezeichen ! folgenden Zeichen werden
          als Shell-Kommando interpretiert und an den Kommandointerpreter
          übergeben. Wurden am Puffer seit dem letzten w-Kommando (write)
          Änderungen vorgenommen, so wird eine Warnung ausgegeben. Dann
          wird das Kommando ausgeführt. Wenn die Ausgabe des Kommandos
          nicht umgelenkt wird, erscheint sie auf dem Bildschirm, ändert
          aber an der Datei nichts. Allerdings kann das Kommando selbst die
          Datei ändern, z. B. !cat /etc/profile >> %. Nach erfolgreicher
          Ausführung des Kommandos wird ein ! ausgegeben. An der Adresse
          der aktuellen Zeile ändert sich nichts.

          Kommen in kommando das Prozentzeichen % und das Nummernzeichen #
          vor, so werden sie als Dateinamen expandiert (siehe Aktuelle und
          sekundäre Datei).

          Ein Ausrufezeichen ! in kommando wird durch das vorherige !-
          Kommando ersetzt. Mit !! wird also das letzte !-Kommando wiede-
          rholt. Die so erweiterten Kommandozeilen werden auf dem Bild-
          schirm ausgegeben.

     bereich ! kommando
          (escape) Bei einem !-Kommando in dieser Form werden die mit
          bereich angegebenen Zeilen an kommando als Standardeingabe über-
          geben und durch die Ausgabe von kommando ersetzt.

          bereich nicht angegeben:

          bereich wird nicht durch .,. ersetzt, sondern es gilt die andere
          Form des !-Kommandos.

     "    Kommandozeilen, die mit Anführungszeichen " beginnen, werden
          ignoriert. Auf diese Weise können Sie in ein Kommandoskript Kom-
          mentarzeilen einfügen.

     zeile &schalter n zusatz
     bereich&schalter zusatz
     zeile sschalter n zusatz
     bereichsschalter zusatz
          (resubst) Das letzte s-Kommando (substitute) wird wiederholt, als
          ob & durch das letzte s/rA/ersatz/ ersetzt würde. Dieselbe Funk-
          tion hat ein s-Kommando, in dem /rA/ersatz/ weggelassen wird.


Seite 25                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     zeile < n
     bereich <
          (lshift) Die Zeilen innerhalb des angegebenen Bereichs bzw. n
          Zeilen, die auf zeile folgen, werden um shiftwidth Positionen
          nach links verschoben. Leer- und Tabulatorzeichen gehen dabei
          verloren; die übrigen Zeichen bleiben unverändert erhalten. Die
          letzte der geänderten Zeilen wird zur aktuellen Zeile.

     zeile > n
     bereich >
          (rshift) Die Zeilen innerhalb des angegebenen Bereichs bzw. n
          Zeilen, die auf zeile folgen, werden durch Einfügen von Leer- und
          Tabulatorzeichen um shiftwidth Positionen nach rechts verschoben.

     zeile=
          (line number) Die Zeilen-Nummer der angegebenen zeile wird ausge-
          geben. Die Position der aktuellen Zeile wird nicht verändert.

          zeile nicht angegeben:

          Die Zeilen-Nummer der letzten Zeile wird ausgegeben.

EX-OPTIONEN
     Mit den Optionen des ex kann das Verhalten der Editoren ex und (vor
     allem) vi beeinflußt werden (siehe vi, Voreinstellung des vi).

     Für alle Optionen gibt es Standard-Einstellungen, die beim Aufruf von
     ex oder vi wirksam werden. Mit dem ex-Kommando se (set) können Sie
     sich alle Optionen ausgeben lassen:

     set all RETURN

     Sie können aber auch mit diesem Kommando eine oder mehrere Optionen
     nach Ihren Vorstellungen verändern:

     set showmode scroll=15 RETURN

     In diesem Fall wird im vi der Eingabe-Modus in der Status-Zeile ange-
     zeigt und die Anzahl der Zeilen, um die CTRL-D den Bildschirm rollt,
     auf 15 gesetzt.

     Mit

     set RETURN

     werden Ihnen alle Optionen ausgegeben, die von den Standardwerten
     abweichen.







Seite 26                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     Es gibt zwei Typen von Optionen: Optionen mit Boole'schen Werten und
     Optionen mit nicht-Boole'schen Werten. Ein Beispiel für den
     Boole'schen Typ ist z. B. die Option showmode. Ist diese Option nicht
     gesetzt, hat sie den Namen noshowmode. Ein Beispiel für den nicht-
     Boole'schen Typ ist scroll.

     autoindent, ai
     noautoindent, noai (Standard)
          Ist die Option autoindent gesetzt, so wird im Eingabe-Modus jede
          Zeile entsprechend der vorhergehenden Zeile eingerückt (es werden
          Leer- und Tabulatorzeichen eingefügt). Der Beginn der Einrückung
          wird bestimmt von der Zeile, hinter die angefügt (a,) vor die
          eingefügt (i) oder die als erste geändert (c) wird. Zusätzliche
          Einrückungen können wie gewöhnlich durchgeführt werden, die fol-
          genden Zeilen werden dann automatisch auf die neue Grenze einge-
          rückt.

          Soll der Text weniger eingerückt werden, so können sie durch Ein-
          gabe von CTRL-D den Zeilenanfang um shiftwidth Positionen nach
          links verschieben. Mit einem Dach ^, gefolgt von einem CTRL-D,
          wird die Einrückung für die aktuelle Zeile aufgehoben; mit einer
          Null 0, gefolgt von einem CTRL-D werden alle Einrückungen aufge-
          hoben.

     autoprint, ap
     noautoprint, noap (Standard)
          Nach jedem Kommando, mit dem der Inhalt der Editor-Puffers geän-
          dert wurde, wird die aktuelle Zeile ausgegeben. Bei globalen
          Suchen/Ersetzen-Kommandos (siehe g, s und v) wird autoprint
          unterdrückt.

     autowrite, aw
     noautowrite, noaw (Standard)
          Der Inhalt des Editor-Puffers wird in die aktuelle Datei
          geschrieben, wenn Änderungen vorgenommen worden sind und eines
          der Kommandos e (edit), n (next), rew (rewind) oder ! (escape)
          aufgerufen wird.

     beautify, bf
     nobeautify, nobf (Standard)
          Alle Steuerzeichen außer dem Tabulatorzeichen, dem Neue-Zeile-
          und dem Formularvorschubzeichen werden aus dem Eingabetext ent-
          fernt.

     directory=dvz
     dir=dvz
          Mit dvz wird das Verzeichnis angegeben, in welchem der Editor-
          Puffer angelegt werden soll. Hat der Benutzer für dieses Ver-
          zeichnis keine Schreiberlaubnis, so wird der Editor verlassen.





Seite 27                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     edcompatible, ed
     noedcompatible, noed
          Ist das s-Kommando (substitute) mit den Schaltern g und c verse-
          hen, so werden diese Schalter gespeichert; die nochmalige Angabe
          der Schalter hebt ihre Wirkung auf.

     errorbells, eb
     noerrorbells, noeb
          Vor Fehlermeldungen, die in der letzten Zeile (in der Regel
          invers) erscheinen, wird ein Klingelsignal gesendet.

     exrc, ex
          Diese Option ist aus Sicherheitsgründen nicht wirksam. Sie sollte
          bewirken, daß .exrc-Dateien zulässig sind, die im aktuellen Ver-
          zeichnis stehen.

     flash, fl (Standard)
     noflash, nofl
          Wenn in der Beschreibung des Terminals ein Eintrag darüber ent-
          halten ist, wie am Bildschirm ein optisches Signal erzeugt werden
          kann, so wird der Benutzer auf die dort beschriebene Art auf eine
          fehlerhafte Eingabe aufmerksam gemacht.

     hardtabs=zahl
     ht=zahl
          Mit dieser Option legen Sie fest, in welchen Schritten auf dem
          Terminal Tabulatoren definiert sind (zur Optimierung der Bild-
          schirmausgabe).

     ignorecase, ic
     noignorecase, noic (Standard)
          Alle Großbuchstaben im Text werden beim Suchen mit regulären Aus-
          drücken wie Kleinbuchstaben behandelt. Gleichfalls werden alle
          Großbuchstaben in regulären Ausdrücken wie Kleinbuchstaben behan-
          delt, außer in Ausdrücken für Zeichenklassen.

     lisp
     nolisp (Standard)
          Die Option autoindent wird gesetzt und die vi-Kommandos öffnende
          runde Klammer (, schließende runde Klammer ), öffnende
          geschweifte Klammer {, schließende geschweifte Klammer }, dop-
          pelte öffnende eckige Klammern [[ und doppelte schließende eckige
          Klammern ]] werden angepaßt.

     list
     nolist (Standard)
          In den ausgegebenen Zeilen werden Tabulatorzeichen durch ^I
          ersetzt und das Ende jeder Zeile durch ein $ markiert.






Seite 28                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     magic (Standard)
     nomagic
          Ändert die Interpretation der in regulären Ausdrücken und Erset-
          zungszeichenketten verwendeten Zeichen (siehe Reguläre Ausdrücke
          und Ersetzungszeichenketten).

     mesg (Standard)
     nomesg
          Ein-/Ausschalten der Schreiberlaubnis für andere Benutzer auf das
          Terminal (z. B. durch das Kommando write).

     modelines (Standard)
     nomodelines
          Die ersten und die letzten fünf Zeilen einer eingelesenen Datei
          werden als Editorkommandos betrachtet und ausgeführt, wenn sie
          von der Form sind:

          ex:kommando:

     novice
     nonovice (Standard)
          Es sollen ausführlichere Fehlermeldungen erzeugt werden.

     number, nu
     nonumber, nonu (Standard)
          Die Zeilen werden mit vorangestellten Zeilennummern ausgegeben.

     optimize, opt
     nooptimize, noopt (Standard)
          Sie können das Terminal so umschalten, daß kein automatischer
          Wagenrücklauf erfolgt (zur Optimierung der Ausgabe).

     paragraphs=zeichenkette
     para=zeichenkette
          Dieser Option wird eine Zeichenkette zugewiesen. Jeweils zwei in
          dieser Zeichenkette enthaltene Zeichen stehen für den Namen eines
          nroff-Makros, das einen Absatz (Paragraphen) einleitet. Ein Makro
          wird in einen Text im Format .XX eingetragen, wobei der Punkt (.)
          das erste Zeichen der Zeile ist.

     prompt (Standard)
     noprompt
          Ist prompt gesetzt, so wird im Kommando-Modus das Bereitzeichen
          Doppelpunkt : angezeigt; andernfalls wird kein Bereitzeichen aus-
          gegeben.

     readonly
     noreadonly (Standard)
          Ist readonly gesetzt, so können die zu bearbeitenden Dateien nur
          gelesen werden. Veränderungen am Text sind nicht möglich. Ist
          noreadonly gesetzt, können Sie in den Dateien Veränderungen vor-
          nehmen.


Seite 29                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     redraw (Standard)
     noredraw
          Werden Änderungen vorgenommen, so sollen diese sofort auf dem
          Bildschirm ausgegeben werden. Wegen der großen Menge der ausgege-
          benen Daten ist dies jedoch nur sinnvoll, wenn die Daten mit
          einer hohen Geschwindigkeit übertragen werden.

     remap (Standard)
     noremap
          Ist remap gesetzt, so werden bei der Makroumsetzung auch Makros
          berücksichtigt, die durch andere Makros definiert sind. Die
          Umsetzung wird fortgesetzt, bis das gewünschte Makro erstellt
          ist. Ist diese noremap gesetzt, so wird lediglich eine einstufige
          Umsetzung durchgeführt.

     report=n
          Wenn die Zahl der Zeilen, die mit dem letzten Kommando geändert,
          gelöscht oder kopiert wurde, größer als n ist, erscheint in der
          Status-Zeile eine Meldung.

     scroll=n
          Der bei scroll angegebene Wert n steht für die Anzahl von Zeilen,
          um die das Fenster bei einem CTRL-D verschoben werden soll, und
          die bei einem z-Kommando (der zweifache Wert von scroll) ausgege-
          ben werden sollen.

     sections=zeichenkette
     sect=zeichenkette
          Dieser Option wird eine Zeichenkette zugewiesen. Jeweils zwei in
          dieser Zeichenkette enthaltene Zeichen stehen für den Namen eines
          nroff-Makros, das einen Abschnitt (Section) einleitet. Ein Makro
          wird in einen Text im Format .XX eingetragen, wobei der Punkt (.)
          das erste Zeichen der Zeile ist.

     shiftwidth=n
     sw=n
          Der bei sw angegebene Wert n steht für die Schrittweite eines
          Software-Tabulators, um die der Text bei gesetzter Option autoin-
          dent und den Kommandos Kleinerzeichen < und Größerzeichen > ver-
          schoben werden soll.

     showmatch, sm
     noshowmatch, nosm (Standard)
          Wird im vi eine schließende runde Klammer ) oder eine schließende
          geschweifte Klammer } eingegeben, so wird die zugehörige ( oder {
          angezeigt, falls sie sich noch auf dem Bildschirm befindet.

     showmode, smd
     noshowmode, nosmd (Standard)
          Wenn smd gesetzt ist, wird in der Status-Zeile angezeigt, wenn
          sich vi im vi-Eingabe-Modus befindet.



Seite 30                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     slowopen, slow
     noslowopen, noslow (Standard)
          Im vi soll die Korrektur des Bildschirminhalts während der Ein-
          gabe verzögert werden. Dadurch soll der Durchsatz bei nicht
          intelligenten Terminals erhöht werden.

     tabstop=n
     ts=n
          n gibt die Software-Tabulatoren an, die vom Editor benutzt wer-
          den, um Tabulatoren in der editierten Datei zu expandieren.

     taglength=zahl
     tl=zahl
          Im Zusammenhang mit dem :tag-Kommando wird hier bestimmt, wie-
          viele Zeichen für die Suche signifikant sein sollen. Der Wert 0
          besagt, daß alle Zeichen berücksichtigt werden.

     tags=dateien
          Namen der tag-Dateien, durch Leerzeichen getrennt.

     term=zeichenkette
          zeichenkette beschreibt für vi den zu verwendenden Terminaltyp.
          (Standardmäßig wird der Wert der Umgebungsvariable TERM verwen-
          det.)

     terse
     noterse (Standard)
          Ist terse gesetzt, so werden gekürzte Fehlermeldungen ausgegeben.

     timeout
     notimeout
          Verzögerungszeit setzen/rücksetzen.

     ttytype=zeichenkette
          zeichenkette beschreibt für vi den zu verwendenden Terminaltyp.
          (Standardmäßig wird der Wert der Umgebungsvariable TERM verwen-
          det.)

     warn (Standard)
     nowarn
          Wenn warn gesetzt ist, erscheint bei einem :!-Kommando die War-
          nung No write since last change, wenn seit der letzten Sicherung
          mit w noch Änderungen am Editor-Puffer erfolgten.

     window=n
          Die Anzahl der Zeilen in einem Textfenster des vi.








Seite 31                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

     wrapmargin=n
     wm=n
          Nur im vi wirksam. Wenn n > 0 ist, wird an das letzte Wort in
          einer Eingabezeile automatisch ein Neue-Zeile-Zeichen angefügt,
          so daß das Zeilenende um mindestens n Positionen vom rechten Rand
          des Bildschirms entfernt ist.

          Mit n=0 (Standard) kann der automatische Zeilenumbruch ausge-
          schaltet werden.

     wrapscan, ws (Standard)
     nowrapscan, nows
          Ist wrapscan gesetzt, so wird das Suchen mit /.../ oder ?...?,
          wenn das Ende bzw. der Anfang des Editor-Puffers erreicht ist, am
          Anfang bzw. Ende fortgesetzt. Falls nows gesetzt ist, wird das
          Suchen am Anfang bzw. am Ende der Datei beendet.

     writeany, wa
     nowriteany, nowa (Standard)
          Wenn nowa gesetzt ist, wird bei einem Sicherungskommando w eine
          Prüfung auf die Existenz der Datei gemacht. Damit wird verhin-
          dert, daß Sie versehentlich eine schon existierende Datei über-
          schreiben. Mit w! wird diese Prüfung umgangen. Wenn wa gesetzt
          ist, wird nicht geprüft, ob die Datei schon existiert.

FEHLERMELDUNGEN
     Tritt bei ex ein Fehler auf, so sendet der Editor an die Terminals das
     akustische Signal BEL [siehe ascii(5)] und gibt eine Fehlermeldung
     aus. Bei einem Unterbrechungssignal kehrt ex auf die Kommandoebene
     zurück, d. h. Sie können ein neues ex-Kommando eingeben. Liest der
     Editor die Eingabe aus einer Datei, so bricht ex bei einem Unterbre-
     chungssignal ab.

     Stellt ex einen internen Fehler fest, so wird versucht, den Puffer zu
     retten, wenn die zuletzt vorgenommenen Änderungen noch nicht abgespei-
     chert worden sind. Durch einen erneuten Aufruf von ex mit der Option
     -r kann auf die gesicherten Daten zurückgegriffen werden.

INTERNATIONALE UMGEBUNG
     Die Umgebungsvariable LCMESSAGES bestimmt die Sprache der Meldungs-
     texte. Wenn LCMESSAGES nicht oder als leere Zeichenkette definiert
     ist, wird der Wert von LANG als Standardwert herangezogen. Ist auch
     LANG nicht oder als leere Zeichenkette definiert, verhält sich das
     System so, als wäre es nicht internationalisiert.

     Die Umgebungsvariable LCALL bestimmt die gesamte internationale Umge-
     bung. LCALL hat Vorrang vor allen anderen Umgebungsvariablen im
     Bereich der Internationalisierung.






Seite 32                     Reliant UNIX 5.44               Gedruckt 11/98

ex(1)                                                                 ex(1)

BEISPIELE
     Es werden einige ex-Kommandos vorgeführt und erläutert:

     $ ex zahlen                - ex aufrufen (Dateiname "zahlen")
     "zahlen" 4 lines, 20 characters
     :set number                - Zeilennummern ausgeben
     :1,$p                      - Zeile 1 bis letzte Zeile ausgeben
          1  eins               - Ursprünglicher Inhalt von "zahlen"
          2  zwei
          3  drei
          4  vier
     :1 c 1                     - Zeile 1 ändern
          1  EINS               - Neue Zeile 1
          2  .                  - Eingabemodus verlassen
     :2,3 co 4                  - Zeile 2 bis 3 hinter Zeile 4 kopieren
          6  drei
     :1,$ g/zwei/s//ZWEI/       - In der gesamten Datei "zwei" durch "ZWEI"
                                  ersetzen
     :2 a                       - Hinter Zeile 2 neue Zeile einfügen
          3  DREI               - Neue Zeile 3
          4  .                  - Eingabemodus verlassen
     :4 i                       - Vor Zeile 4 neue Zeile einfügen
          4  VIER               - Neue Zeile 4
          5  .                  - Eingabemodus verlassen
     :5,$ d a                   - Zeile 5 bis Dateiende löschen und in Puffer a
                                  sichern
           4  VIER
     :1,$p                      - Zeile 1 bis letzte Zeile ausgeben
          1  EINS
          2  ZWEI
          3  DREI
          4  VIER
     :wq                        - Sichern des Pufferinhalts und ex verlassen
     "zahlen" 4 lines, 20 characters

UMGEBUNGSVARIABLEN
     TERM     In der Umgebungsvariablen TERM muß der Typ des benutzten Ter-
              minals festgelegt sein.

     EXINIT   Umgebungsvariable mit Voreinstellungen für ex und vi. Diese
              Voreinstellungen sind immer wirksam.

DATEIEN
     $HOME/.exrc
          Datei mit Voreinstellungen für ex und vi. Diese Voreinstellungen
          sind nicht wirksam, wenn durch EXINIT Widersprüchliches definiert
          wird.

SIEHE AUCH
     ed(1), edit(1), vi(1).




Seite 33                     Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026