Was ist vi? Grundlagen des Terminal-Editors

Autor: Veröffentlicht

Kurz gesagt: vi ist ein Texteditor, der im Terminal läuft und vor allem auf Unix- und Linux-Systemen verwendet wird. Er wird über Tastaturbefehle bedient; was die Tasten bewirken, hängt vom gewählten Modus ab. Um mit dem Schreiben zu beginnen, drücke i. Um die Datei zu speichern und den Editor zu beenden, drücke Esc, gib :wq ein und bestätige mit Enter. Wenn du den Editor ohne Speichern der Änderungen verlassen möchtest, verwende Esc, anschließend :q! und Enter.

Wozu dient vi?

vi dient zum Bearbeiten einfacher Textdateien: Programmkonfigurationen, Skripte, Quellcode oder Notizen. Er ist kein Dokumenteditor wie Word – er dient nicht dazu, Schriftarten oder Seitenlayouts festzulegen oder Abbildungen einzubetten. Er bearbeitet den Dateiinhalt ohne zusätzliche Dokumentformatierung.

Besonders nützlich ist er bei der Arbeit auf einem Server über SSH, also eine verschlüsselte Verbindung zu einem anderen Computer. Wenn du ausschließlich Zugriff auf das Terminal hast, kannst du eine Datei korrigieren, ohne eine grafische Desktopumgebung zu starten oder die Datei auf deinen Computer herunterzuladen.

Der Editor vi oder ein kompatibler Ersatz ist in vielen Unix-Umgebungen verfügbar. Du solltest jedoch nicht davon ausgehen, dass du ihn in jeder Installation findest: Ein minimales System- oder Container-Image kann ganz ohne Editor auskommen.

Warum hat vi verschiedene Betriebsmodi?

In einem typischen Editor fügt das Drücken einer Buchstabentaste diesen Buchstaben sofort in den Text ein. In vi befindest du dich nach dem Öffnen einer Datei normalerweise im Normalmodus, auch Befehlsmodus genannt. Die Buchstabentasten dienen dann dazu, dich durch die Datei zu bewegen, Text zu löschen oder andere Aktionen auszuführen.

Für den Einstieg genügt es, drei Arten der Bedienung zu unterscheiden:

Diese Unterscheidung erklärt eine häufige Überraschung bei Einsteigern: Sie drücken Buchstabentasten, bewegen aber den Cursor oder verändern vorhandenen Text, statt zu schreiben. Wenn du nicht weißt, in welchem Modus du dich befindest, drücke Esc. Wähle erst danach die nächste Aktion.

Die erste Dateibearbeitung Schritt für Schritt

Am sichersten übst du die Bedienung an einer neuen Datei statt an der Konfiguration eines laufenden Dienstes. Starte im Terminal:

vi notiz.txt

Wenn die Datei existiert, öffnet der Editor ihren Inhalt. Wenn sie nicht existiert, bereitet er ein neues Dokument im Arbeitsspeicher vor; auf dem Datenträger wird die Datei erst nach erfolgreichem Speichern angelegt.

  1. Drücke i, um in den Einfügemodus zu wechseln.
  2. Gib einen Satz ein, beispielsweise Das ist meine erste Notiz.
  3. Drücke Esc, um die Texteingabe zu beenden.
  4. Gib :wq ein und drücke Enter.

Nachdem du die Datei gespeichert und den Editor geschlossen hast, kehrst du zur Shell zurück, also dem Programm, das Befehle im Terminal entgegennimmt. Du kannst vi notiz.txt erneut ausführen, um den Inhalt zu prüfen.

Wenn du deine Arbeit speichern, aber weiter bearbeiten möchtest, verwende :w. :q allein schließt den Editor, sofern keine ungespeicherten Änderungen vorliegen, die eine Entscheidung erfordern. Der Befehl :q! verwirft ungespeicherte Änderungen – er löscht keine vorhandene Datei vom Datenträger.

Grundbefehle, die die Arbeit erleichtern

Führe die folgenden Befehle im Normalmodus aus. Doppelpunkt und Schrägstrich leiten die Eingabe eines Befehls ein, den du mit Enter bestätigst; die übrigen Tastenkürzel funktionieren ohne diese Bestätigung.

BefehlWirkung
h, j, k, lBewegung nach links, unten, oben beziehungsweise rechts
0Zum Zeilenanfang springen
$Zum Zeilenende springen
xDas Zeichen unter dem Cursor löschen
ddDie aktuelle Zeile löschen
uDie letzte Änderung rückgängig machen
/gesuchter TextText in Richtung Dateiende suchen
nDie Suche in derselben Richtung wiederholen
:25Zu Zeile 25 springen

Um beispielsweise die Einstellung timeout zu finden, drücke Esc, gib /timeout ein und bestätige mit Enter. Mit n gelangst du zum nächsten Vorkommen. Das ist bequemer, als eine lange Konfiguration manuell durchzusehen.

Sind vi und Vim dasselbe Programm?

Nein. Vim, dessen Name für Vi IMproved steht, ist ein eigenständiger Editor, der das Bedienkonzept von vi weiterentwickelt. Er bietet zusätzliche Funktionen wie umfangreiche Syntaxhervorhebung, Plugins oder mehrstufiges Rückgängigmachen von Änderungen.

Auf manchen Systemen startet der Befehl vi tatsächlich Vim oder einen anderen kompatiblen Editor. Deshalb können die Bildschirmdarstellung und die verfügbaren Erweiterungen unterschiedlich sein. Die beschriebenen Grundbefehle gehören zum gemeinsamen Bedienkonzept, aber nicht jede Anleitung zu Vim lässt sich vollständig auf das klassische vi übertragen.

Erstelle vor dem Bearbeiten einer wichtigen Konfiguration eine Kopie davon. Wenn das Speichern mit einem Berechtigungsfehler scheitert, verschafft dir das bloße Hinzufügen von ! keine Zugriffsrechte auf die Datei. Übe zunächst mit einer eigenen Notiz und prüfe eine geänderte Konfiguration anschließend mit dem Validierungswerkzeug des jeweiligen Dienstes, sofern dieser eines bereitstellt.

Lesen Sie auch

Wie PHP-FPM PHP-Anfragen verarbeitet, sich vom Webserver unterscheidet und wie du Prozesse an Last und Hosting-Ressourcen anpasst.
BIND ist offene DNS-Serversoftware. Erfahre, welche Aufgaben sie übernimmt und wann sich der Betrieb eines eigenen Servers lohnt.
Was Polens REGON-Register und seine Kennnummer bedeuten, wie sie sich von NIP und KRS unterscheiden und wie Sie Unternehmensdaten prüfen.