So beenden Sie den Vi- oder Vim-Editor
Veröffentlicht: 2022-01-29 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 weistvi
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.
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
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.
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.
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!
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.
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
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.
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
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.
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.