So beenden Sie den Vi- oder Vim-Editor

Der vi-Editor ist verwirrend, wenn Sie nicht daran gewöhnt sind. Es bedarf eines geheimen Händedrucks, um dieser Anwendung zu entkommen, wenn Sie darauf gestolpert sind. So beenden Sie vi oder vim unter Linux, macOS oder einem anderen Unix-ähnlichen System.

Die schnelle Antwort

Wenn Sie sich in vi oder vim befinden und aussteigen müssen – mit oder ohne Speichern Ihrer Änderungen – gehen Sie wie folgt vor:

Drücken Sie zunächst einige Male die Esc-Taste. Dadurch wird sichergestellt, dass vi sich außerhalb des Einfügemodus und im Befehlsmodus befindet.
Zweitens tippe :q! und drücken Sie die Eingabetaste. Dies weist vi an, den Vorgang zu beenden, ohne Änderungen zu speichern. (Wenn Sie Ihre Änderungen speichern möchten, geben Sie stattdessen :wq ein.)

Wenn Sie die Linux-Befehlszeile lernen möchten, müssen Sie noch viel mehr wissen. Lesen Sie weiter und wir zeigen Ihnen, wie vi funktioniert und warum die Anweisungen zum Beenden so ungewöhnlich sind. vi ist ein wichtiges, leistungsstarkes Werkzeug und die Lernkurve lohnt sich.

vi, Der allgegenwärtige Editor

Da vi überall ist, besteht die Möglichkeit, dass Sie ihm begegnen. Sie können sich sogar versehentlich in vi wiederfinden. Vielleicht bittet Sie jemand, nach seinem Linux-Computer zu suchen. Sie geben einen Befehl wie crontab -e aus und vi erscheint. Überraschung, jemand hat den Standardeditor für crontab so konfiguriert, dass er vi ist.

Vielleicht verwalten Sie ein System, in dem vi der einzige Editor ist oder der einzige, der über eine Remote-SSH-Sitzung funktioniert, und Sie müssen die .bashrc-Datei eines Benutzers bearbeiten.

Der Befehl zum Starten von vi und Öffnen einer Datei ist unkompliziert. Geben Sie vi , ein Leerzeichen und dann den Dateinamen ein. Drücken Sie Enter. Das gestartete Programm kann vi oder vim sein, ein ‚verbessertes vi‘. Dies hängt von Ihrer Linux-Distribution ab – Ubuntu verwendet beispielsweise vim . Alle Anweisungen in diesem Artikel gelten gleichermaßen für vim.

 vi .bashrc

Der sofort spürbare Unterschied zwischen vi und anderen Editoren besteht darin, dass Sie beim Starten von vi nicht einfach mit der Texteingabe beginnen können. Das liegt daran, dass vi ein modaler Editor ist. Die Bearbeitung erfolgt in einem Modus, dem Einfügemodus, und das Ausgeben von Befehlen erfolgt im Befehlsmodus. vi startet in den Befehlsmodus.

Wenn Sie mit dem Konzept des Einfügemodus und des Befehlsmodus nicht vertraut sind, kann dies verwirrend sein. Viele der Befehle, die Sie im Befehlsmodus ausführen können, wirken sich auf die Datei aus, die Sie eingeben. Wenn Sie sich im Befehlsmodus befinden, aber versehentlich versuchen, Text in Ihre Datei einzugeben, wird es nicht gut enden. Einige der von Ihnen getätigten Tastenanschläge werden als Befehle erkannt. Diese Befehle können Zeilen löschen oder teilen, den Cursor verschieben oder Text löschen.

Und egal, was Sie eingeben, Sie können den Editor nicht verlassen oder beenden. Währenddessen wird Ihre Datei ziemlich verstümmelt und die scheinbar zufälligen Pieptöne machen Sie verrückt.

Befehlsmodus und Einfügemodus

Sie müssen vi in ​​den geeigneten Modus schalten, um das zu erreichen, was Sie erreichen möchten.

Der Befehlsmodus ist der Standardmodus, wenn vi gestartet wird. Wenn Sie es nicht besser wissen, versuchen Sie zu tippen. Wenn Sie zufällig die Taste ‚i‘ oder eine der anderen 10 Tasten drücken, die den Einfügemodus aufrufen (a, A, c, C, I, o, O, R, s und S), sehen Sie plötzlich, was du tippst. Sie befinden sich jetzt im Einfügemodus.

Dies kann sich wie ein Fortschritt anfühlen, bis Sie eine der Pfeiltasten drücken. Wenn Sie dies tun, erscheinen A, B, C oder D als einziger Buchstabe in einer ansonsten leeren neuen Zeile. Am Anfang der Datei.

Es ist in Ordnung, wir haben Ihren Rücken. Dies ist überraschend einfach, wenn Sie wissen, wie. Denken Sie an diese beiden Tastenkombinationen: Esc bringt Sie in den Befehlsmodus und „i“ bringt Sie in den Einfügemodus.

Sie müssen sich im Befehlsmodus befinden und den richtigen Befehl eingeben, um den Editor zu verlassen.

Vom Kommandomodus zur Sicherheit

Um in den Befehlsmodus zu gelangen, drücken Sie die Esc-Taste. Es wird nichts Sichtbares passieren. Schlagen Sie es noch ein paar Mal. Wenn Sie beim Drücken der Escape-Taste einen Piepton hören, befinden Sie sich im Befehlsmodus. Der Piepton sagt Ihnen „Hören Sie auf Esc zu drücken, Sie sind bereits im Befehlsmodus.“ Wenn Sie beim Drücken von Esc einen Piepton hören, sind wir gut.

Geben Sie einen Doppelpunkt, den Buchstaben „q“ und ein Ausrufezeichen ohne Leerzeichen ein. Diese drei Zeichen sollten ganz links in der unteren Zeile des Terminals erscheinen. Wenn dies nicht der Fall ist, drücken Sie Esc, bis Sie einen Signalton hören, und versuchen Sie es erneut. Drücken Sie die Eingabetaste, wenn Sie sie sehen können:

:q!

In diesem Befehl ist q eine Abkürzung für quit . Das Ausrufezeichen verstärkt die Betonung, sodass es so ist, als würden Sie „Beenden!“ schreien. bei vi. Damit fühlst du dich vielleicht ein bisschen besser.

Das Ausrufezeichen weist vi auch an, keine der Änderungen zu speichern, die Sie möglicherweise an der Datei vorgenommen haben. Wenn Sie in vi herumgestolpert sind und nicht wissen, was Sie tun, möchten Sie wahrscheinlich nicht das Chaos retten, das Sie angerichtet haben.

Sobald Sie wieder an der Befehlszeile sind, sollten Sie noch einmal überprüfen, ob die Datei nicht geändert wurde. Dies können Sie mit dem folgenden Befehl tun:

cat .bashrc | less

Wenn Sie beim Beenden von vi die Meldung „Kein Schreiben seit letzter Änderung“ sehen, bedeutet dies, dass Sie das Ausrufezeichen des Befehls verpasst haben. Um zu verhindern, dass Sie das Programm beenden und alle Änderungen, die Sie behalten möchten, verloren gehen, bietet Ihnen vi die Möglichkeit, diese zu speichern. Geben Sie einfach das :q! Befehl mit dem Ausrufezeichen, um vi zu verlassen und alle Änderungen zu verwerfen.

Wenn Sie sicher sind, speichern Sie Ihre Änderungen

Wenn Sie mit den Änderungen, die Sie an Ihrer Datei vorgenommen haben, zufrieden sind, können Sie die Änderungen mit dem Befehl :wq (write and quit) beenden und speichern. Stellen Sie sicher, dass Sie vollständig davon überzeugt sind, dass Ihre Bildschirmbearbeitungen in die Datei geschrieben werden, bevor Sie fortfahren.

Geben Sie einen Doppelpunkt, den Buchstaben w (schreiben) und den Buchstaben q (beenden) ein. Drücken Sie die Eingabetaste, wenn Sie sie unten links im Terminal sehen:

:wq

Die Lernkurve lohnt sich

Die Verwendung von vi ist ein bisschen wie die Verwendung eines Klaviers. Sie können sich nicht einfach hinsetzen und es benutzen; du musst etwas üben. Sich kalt hinzusetzen und zu versuchen, im Handumdrehen zu lernen, wenn der Druck auf Sie lastet, etwas bearbeiten zu lassen, ist nicht der richtige Weg. Es macht so viel Sinn, sich zum ersten Mal an ein Klavier zu setzen, während sich der Vorhang für Ihr Antrittskonzert hebt.

Ein Großteil der Leistungsfähigkeit von vi beruht auf den vielen Tastenkombinationen, die jeweils eine gemeinsame Bearbeitungsaufgabe ausführen. Das ist großartig, aber Sie können nicht davon profitieren, bis Sie sie auswendig gelernt und geübt haben und sie Teil Ihres Muskelgedächtnisses sind.

Bis dahin, wenn Sie sich in vi wiederfinden und eine wichtige Datei ansehen, einfach :q! und anmutig verlassen. Ihre wichtige Datei wird es Ihnen danken.