So beenden Sie den Vi- oder Vim-Editor

Veröffentlicht: 2022-01-29

vi-Editor unter Ubuntu Linux

Der vi Editor ist verwirrend, wenn Sie nicht daran gewöhnt sind. Es braucht einen geheimen Händedruck, um dieser Anwendung zu entkommen, wenn Sie darauf gestoßen sind. So beenden Sie vi oder vim unter Linux, macOS oder einem anderen Unix-ähnlichen System.

Die schnelle Antwort

Wenn Sie in vi oder vim sind und raus 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 sich vi nicht im Einfügemodus und im Befehlsmodus befindet.
  • Geben Sie zweitens :q! und drücken Sie die Eingabetaste. Dies weist vi an, 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 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, mächtiges Werkzeug und die Lernkurve lohnt sich.

vi, Der allgegenwärtige Editor

Da vi überall ist, besteht die Möglichkeit, dass Sie darauf stoßen. Sie können sich sogar versehentlich in vi wiederfinden. Vielleicht bittet Sie jemand, sich seinen Linux-Computer für ihn anzusehen. 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, bei 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.

Anzeige

Der Befehl zum Starten von vi und Öffnen einer Datei ist einfach. Geben vi , ein Leerzeichen und dann den Dateinamen ein. Drücken Sie Enter. Das Programm, das gestartet wird, könnte 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

.bashrc in vi

Der sofort erkennbare Unterschied zwischen vi und anderen Editoren besteht darin, dass Sie beim Start von vi nicht einfach mit der Eingabe von Text beginnen können. Das liegt daran, dass vi ein modaler Editor ist. Das Editieren wird in einem Modus, dem Einfügemodus, durchgeführt, und das Ausgeben von Befehlen wird im Befehlsmodus durchgeführt. vi startet im Befehlsmodus.

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

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

Schlechter Versuch, in vi zu bearbeiten

Befehlsmodus und Einfügemodus

Sie müssen vi in den geeigneten Modus für das umschalten, was Sie erreichen möchten.

Der Befehlsmodus ist der Standardmodus beim Start von vi . Wenn Sie es nicht besser wissen, beginnen Sie mit dem Tippen. Wenn Sie zufällig die 'i'-Taste oder eine der anderen 10 Tasten drücken, die den Einfügemodus aufrufen (a, A, c, C, I, o, O, R, s und S), werden Sie plötzlich sehen, was du tippst. Sie befinden sich jetzt im Einfügemodus.

Anzeige

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

Es ist in Ordnung, wir halten Ihnen den Rücken frei. Das ist überraschend einfach, wenn man weiß wie. Denken Sie an diese beiden Tastenanschläge: 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 Befehlsmodus zur Sicherheit

Um in den Befehlsmodus zu wechseln, 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 befinden sich bereits im Befehlsmodus.“ Wenn Sie einen Piepton hören, wenn Sie Esc drücken, sind wir in Ordnung.

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 Piepton hören, und versuchen Sie es erneut. Drücken Sie die Eingabetaste, wenn Sie sie sehen können:

 :Q! 

:Q! Befehl in vi

In diesem Befehl ist q eine Abkürzung für quit . Das Ausrufezeichen fügt Betonung hinzu, sodass es so ist, als würdest du „Hör auf!“ rufen. bei vi . Damit fühlst du dich vielleicht etwas besser.

Anzeige

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, wollen Sie wahrscheinlich das Chaos, das Sie angerichtet haben, nicht retten.

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

 Katze .bashrc | weniger 

.bashrc in weniger

Wenn Sie beim Beenden von vi die Meldung „kein Schreiben seit der letzten Änderung“ sehen, bedeutet dies, dass Sie das Ausrufezeichen des Befehls verpasst haben. Um zu verhindern, dass Sie beenden und Änderungen verlieren, die Sie vielleicht behalten möchten, gibt Ihnen vi die Möglichkeit, sie zu speichern. Geben Sie einfach das :q! Befehl mit dem Ausrufezeichen, um vi zu verlassen und alle Änderungen zu verwerfen.

Kein Schreiben seit der letzten Änderungsnachricht

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 :wq (write and quit) beenden und speichern. Stellen Sie sicher, dass Sie vollkommen zufrieden sind, dass Ihre Bildschirmbearbeitungen in die Datei geschrieben werden sollen, 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 können:

 :wq 

:wq-Befehl in vi

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; da musst du etwas üben. Sich kalt hinzusetzen und zu versuchen, im Handumdrehen zu lernen, wenn der Druck auf Ihnen lastet, etwas bearbeiten zu lassen, ist nicht der richtige Weg. Es macht so viel Sinn, sich zum ersten Mal an ein Klavier zu setzen, wenn sich der Vorhang für Ihr Eröffnungskonzert hebt.

Anzeige

Ein Großteil der Leistungsfähigkeit von vi beruht auf seinen 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 würdevoll aussteigen. Ihre wichtige Datei wird es Ihnen danken.