Beruflich Dokumente
Kultur Dokumente
Informationen Vi Editor
Informationen Vi Editor
Der vi Editor
Jedes Betriebssystem enthält einen Editor, um beliebige Dateien zu erstellen und verändern zu kön-
nen. Der erste benutzerfreundliche Editor war der vi-Editor, welcher heute noch zur Standardkonfi-
guration jeder Unix/Linux Distribution gehört. Bei der Entwicklung wurden einige Grundeigenschaf-
ten definiert, die zu Besonderheiten führen:
• Unabhängigkeit vom verwendeten Terminaltyp. Daraus ergibt sich aber auch die Einschränkung, dass
keine spezifischen Sondertasten ohne Sonderanpassung unterstützt werden.
• Große Menge an Kommandos, um jeder Aufgabenstellung ohne lange Kommandofolgen gerecht
werden zu können. Dies führt dazu, dass viele Benutzer einige Zeit benötigen, bis sie den vi effektiv
nutzen können.
• Für einige Grundkommandos existiert eine recht flexible einfache Kommandosyntax. Diese Syntax
soll Benutzern entgegenkommen, die sich schlecht eine große Menge von Kommandos, sondern bes-
ser eine einheitliche Konzeption einprägen können.
• Haupteinsatzgebiet von vi ist die Bearbeitung von Systemdateien in der Administration, Quelldateien
in der Softwareentwicklung und einfacher Textdateien für reine Benutzer des Systems. Für die Text-
verarbeitung im großen Stil ist vi nicht zu gebrauchen.
• Verschiedene Modi. Es existiert ein Kommandomodus, in dem alle Eingaben als Kommandos an vi
interpretiert werden, ein weiterer sogenannter Eingabemodus, in dem alle Eingaben als Erweiterun-
gen des Textes angesehen werden, und schließlich der ex-Modus, in dem ex-Kommandos zur Bear-
beitung des Textes verwendet werden können.
• der vi-Kommandomodus
• der Eingabemodus
• der ex-Kommandomodus
vi-Kommandomodus
vi- ex-Komman-
domodus vi- Eingabemodus
Direkt nach dem Start des Editors ist der vi-Kommandomodus aktiv, die eingegebenen Zeichen wer-
den als Kommandos interpretiert und nicht als Text. Da alle vi-Kommandos mit Buchstaben und Zif-
fernfolgen kodiert sind, führt ein direktes Losschreiben nach dem Aufruf zu Veränderungen am Text.
Jedes vi-Kommando wird sofort ausgeführt, wenn es vollständig ist. Die Verwendung der RETURN-
Taste zum Abschließen des Kommandos ist nicht notwendig. Es existieren verschiedene Kommandos,
um aus dem vi-Kommando- in den Eingabemodus zu wechseln, in dem dann jeder beliebige Text
NN Informationen vi Editor 18.09.2018
Heinz-Nixdorf-Berufskolleg, Essen 1/2
eingegeben werden kann. Dadurch, dass nur sehr wenige Tasten eine Kommandobedeutung im Ein-
gabemodus haben, ist es möglich, Control|- und andere Sonderzeichen in den Text einzufügen. Der
Eingabemodus wird durch Drücken der <ESC>-Taste verlassen. Für einige bestimmte Kommandos je-
doch, wie z. B. Suchen und Ersetzen, muss der ex-Kommandomodus ausgewählt werden. Jedes ex-
Kommando wird durch Voranstellen eines :-Zeichens eingeleitet. Nach Abarbeitung des entsprechen-
den Kommandos im ex-Modus wird wieder in den vi-Kommandomodus zurückgeschaltet. In einigen
Fällen kann es passieren, dass der ex-Kommandomodus permanent aktiv ist. Dies erkennt man an
dem Eingabeprompt in Form eines :-Zeichens. In diesem Fall kann durch Eingabe des Kommandos vi
in den vi-Kommandomodus zurückgeschaltet werden.
Aufruf:
Der vi-Editor wird durch das Kommando vi und einen Pfadnamen als Argument aufgerufen.
Die Syntax lautet: vi Pfadname
Der vi-Editor öffnet die Datei Pfadname und liest ihren Inhalt in den Arbeitsspeicher ein. Das Kom-
mando vi teilt den Bildschirm in Textzeilen und eine Statuszeile auf. Die Statuszeile ist immer die letzte
Zeile des Bildschirms. In ihr werden die Kommandos im ex-Kommandomodus ein- und Fehlermeldun-
gen ausgegeben. Einfache Fehlbedienungen werden durch ein BEEP (akustisches Signal) angezeigt.
Eingabemodus:
Beenden:
Die folgenden Kommandos können im vi-Kommandomodus zum Beenden von vi eingegeben wer-
den:
ZZ schreibt den Arbeitsspeicher in die Datei zurück und beendet den Editor. Es wird keine Backup-
Datei angelegt.
:x wie ZZ-Kommando.
:q! ist notwendig, wenn am aktuellen Text Veränderungen durchgeführt wurden und der Editor be-
endet werden soll, ohne die Änderungen zu speichern.