Ich habe Vi auf meinem Ubuntu-Computer gestartet. Ich bin jedoch neu in Vi und kann jetzt nicht beenden. Ich sehe den Editor und kann Text schreiben. In der unteren Zeile befindet sich die Bezeichnung „Aufnahme“.
Wie beende ich Vi?
Kommentare
- Die " Aufzeichnung " von Der Weg bedeutete, dass Sie ein Makro aufzeichneten. Nicht, dass das mehr wichtig wäre.
- Diese Frage bringt einen solchen " Spaß " Erinnerungen. Ich ' bin so froh, dass ich dieses Gefühl überwunden habe.
- Das Verlassen von Vim ist jetzt ein Mem geworden.
- Für diejenigen, die ' diesen Witz noch nicht gesehen haben: twitter.com/iamdevloper/statuses/435555976687923200
- Stapelüberlauf: Unterstützung einer Million Entwickler beim Beenden von Vim , So beenden Sie den Vim-Editor ? , So beenden Sie die Hilfe in vim
Antwort
vim ist ein modaler Editor . Drücken Sie die Taste ESC , um in den Normal (Befehls-) Modus zu gelangen. Geben Sie dann : q ein und drücken Sie die Eingabetaste .
Um zu beenden, ohne Änderungen zu speichern, geben Sie : q! ein und drücken Sie die Eingabetaste .
Siehe auch Raus in der Vim-Dokumentation.
Kommentare
- Danke: Ich habe diese Befehle ausprobiert, aber nachdem ich sie ausgeführt habe, habe ich wurde aufgefordert mit:
E37: No write since last change (add ! to override)
. Ich habe nichts zu speichern. - Verwenden Sie
:wq
, wenn Sie das, was Sie bearbeitet haben, speichern und dann beenden möchten.:q!
, wenn Sie beenden und Ihre Änderungen hinterlassen möchten. - Oder wenn Sie ' etwas geschrieben haben, das Sie möchten Um eine Kopie von
:w newFileName.txt
zu erstellen, lösen Sie das schreibgeschützte Problem außerhalb von vi oder vim . - quit
:q
; erzwinge das Beenden:q!
; Beenden und speichern Sie:wq
oder:x
- @Jonas. Versuchen Sie es das nächste Mal mit
:qall!
, ich vermute, Sie haben mehr Dateien in einem einzigen Puffer geöffnet.
Antwort
Ich verwende ctrl + [, um die esc -Sequenz zu generieren. Dadurch muss ich meine Finger nicht aus der Ausgangszeile bewegen (denken Sie an die esc <) Der Schlüssel / kbd> befand sich an einer anderen Stelle, als vi
erfunden wurde. :wq
schreibt alle Dateien unabhängig von der Notwendigkeit. Ich schlage vor, ZZ
(das ist shift + z zweimal), das nur schreibt, wenn eine Änderung in der Datei vorgenommen wurde. Auch :xa
entspricht ZZ
, außer wenn in der Editorinstanz mehr als eine Datei geöffnet ist (z. B. vim-Registerkarten). Hinweis: Ich bin nicht sicher, ob dies alles zu 100% mit allen vi-Klonen kompatibel ist, aber ich weiß, dass es mit vim
funktioniert
- Danke. Der Befehl
ZZ
scheint nützlich zu sein. Ich kann den Punkt mitCtrl+[
sehen, aber ich ' verwende ein schwedisches Tastaturlayout und muss um[
zu erhalten, so dass für michCtrl+AltGr+8
wäre 🙁 - Beachten Sie auch
ZQ
ist effektiv dasselbe wie:q!
. Dies ist jedoch kein Standard.ZZ
auf dem Andererseits ist in POSIX angegeben .
Antwort
Das Beenden von vi ist eine andere Möglichkeit: Esc : x .
Die Option wird verwendet zum gleichzeitigen Speichern und Beenden.
Kommentare
- Beachten Sie, dass
ZZ
,:x
schreibt die Datei nur, wenn sich ihr Inhalt geändert hat, im Gegensatz zu:wq
.
Antwort
Wie Sinan sagte, ist vim ein modaler Editor Wenn Sie wissen möchten, ob dies für Sie funktioniert, sollten Sie vielleicht etwas Zeit investieren und vimtutor
ausführen. Dies ist eine interaktive Methode, um vim zu lernen. (Außerdem erfahren Sie, wie Sie das Programm beenden, was die Modi bedeuten und was Sie in den einzelnen Modi tun können.)
Antwort
Nachher Ändern Sie bitte ESC und den angegebenen Befehl :wq!
.
Dadurch wird die neue Änderung zwangsweise in die schreibgeschützte Datei geschrieben. Früher hat es nicht funktioniert, weil die Datei schreibgeschützt ist.
Kommentare
- Warum beantworten Sie eine Frage von vor 4 Jahren mit im Grunde a Wiederholung der Top-Antwort?' ist sowieso falsch: Dies ' erzwingt nicht das Schreiben einer schreibgeschützten Datei - es wird versucht zu schreiben, schlägt möglicherweise fehl und Dann wird das Beenden ohne Speichern erzwungen.
- Ich habe es mit den vorherigen Kommentaren versucht und es hat nicht funktioniert. Ich dachte, es wäre nützlich zu teilen, was ich getan habe. Es ist nicht wichtig, wann die Frage gestellt wurde, sondern ob die Lösungen anwendbar sind oder nicht.
Antwort
Versuchen Sie eine Kombination aus control und Z
Kommentare
- Dadurch bleibt vi im Hintergrund.