Ich weiß, dass dies eher eine allgemeine Linux-Frage ist, aber w / e. Wenn ich also ein Programm wie vim in die Eingabeaufforderung eingebe, wird der gesamte Text in der Datei angezeigt, und ich kann ihn bearbeiten usw. Ich kann jedoch nicht herausfinden, wie die Datei geschlossen oder gespeichert wird, um zur Eingabeaufforderung zurückzukehren, ohne sie zu beenden der Prozess. Jede Hilfe wird geschätzt.
command-line
vim
Lass uns Mittagessen
quelle
quelle
Antworten:
In vim gibt es 3 verschiedene Modi:
Um zum normalen Modus zurückzukehren, können Sie jederzeit drücken esc.
Sobald Sie sich im normalen Modus befinden Drücken Sie
:
, um den Befehl zu starten (Sie sehen ihn unten links). Die folgenden Befehle beziehen sich auf das Beenden von vim::q
- Beenden, wenn keine Änderungen vorgenommen wurden:q!
- Beenden und zerstören Sie alle vorgenommenen Änderungen:wq
- Änderungen schreiben (speichern) und beenden:x
-:wq
Schreiben Sie ähnlich wie beim Beenden die Datei nur, wenn Änderungen vorgenommen wurdenquelle
:x
ist eine Abkürzung für:wq
mode()
Funktion in vim 18 verschiedene Werte zurückgeben.:
im normalen Modus eingeben . Wenn Sie drückenesc
, kehren Sie zum normalen Modus zurück. -1 für die Irreführung von Personen, die versuchen, die Standardterminologie zu erlernen (und folglich in der Lage sind, das Hilfesystem zu verstehen).Drücken Sie zuerst die escapeTaste. 1
Dann tippe einfach
ZZ
(das sind zwei große Zs in einer Reihe).Oder geben Sie ein
:x
. Entweder werden alle Änderungen gespeichert und verlassen.Sie können auch verwenden
:wq
Alternativ können Sie Folgendes eingeben
:q
(auch bekannt als " Beenden, bitte "). Dies wird nur beendet, wenn Sie keine Änderungen vorgenommen haben.Wenn Sie Änderungen vorgenommen haben und diese verwerfen und verlassen möchten, geben Sie Folgendes ein
:q!
(auch bekannt als " Quit, damn it !")1 : Dies stellt sicher, dass Sie sich im "Befehls" -Modus befinden. Welche Sie für die Eingabe von Befehlen möchten, wie die, die zum Beenden benötigt werden.
quelle
Zu unseren Unannehmlichkeiten gibt es keine allgemeine Methode zum Beenden von Befehlszeilenprogrammen wie die Schaltfläche "X" für Grafikprogramme.
Viele Befehlszeilenprogramme verwenden zum Beenden entweder Q(z. B.
man
undtop
) oder Ctrl+ C(z. B.ping
undwatch
). Dies variiert jedoch erheblich, insbesondere bei Texteditoren::q!
damals Enter, in der Regel von mehreren Pressen vorangestellt, Escfür ein gutes Maß.Solche Redakteure sind Fallen für Unerfahrene. Meine persönliche Präferenz und Empfehlung ist, wenn ich gezwungen bin, Text in der Befehlszeile zu bearbeiten, stattdessen den selbsterklärenderen Joe's Own Editor (JOE) zu verwenden .
quelle
nano
ein viel universellerer selbsterklärender Konsolentexteditor ist.Neben der Antwort von jondavidjohn finden Sie hier zwei Links, die wichtige Informationen zur Verwendung von vim enthalten.
Dies ist eine Tastaturgrafik, die Ihnen zeigt, was die einzelnen Tasten tun, je nachdem, ob Sie sich im Bearbeitungsmodus, Befehlsmodus oder im visuellen Modus befinden:
http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html
Dies ist das beste vim Tutorial, das ich je durchgearbeitet habe. Es ist gesprächig und leicht zu verstehen, was an seinem IRC / Instant-Messaging-Format liegt.
http://www.vi-improved.org/tutorial.php
Schließlich gibt es einige wie Aendruk, die einfach keine erweiterten Texteditoren für die Befehlszeile verwenden möchten. Vor allem Vim hat eine steile Lernkurve und muss sich erst einmal daran gewöhnen. Aber es ist sehr schnell und sehr mächtig. Wenn Sie Interesse an Linux haben, das über die grundlegende Desktop-Nutzung hinausgeht, lohnt es sich, Zeit in einen anständigen Texteditor für die Befehlszeile wie Vim oder Emacs zu investieren. Wenn Sie nur Text bearbeiten müssen und sich darüber hinaus nicht sonderlich darum kümmern, geben Sie
gedit filename.txt
stattdessen etwas ein. Es wird ein bekanntes grafisches Programm gestartet, ähnlich wie Notepad unter Windows.quelle
wenn Esc
:q!
nicht klappt,zuerst versuchen Ctrl+ q(um den mit Ctrl+ gesperrten Bildschirm zu entsperren s)
versuchen Sie es dann erneut Esc
:q!
(um das Programm zu beenden, ohne es zu speichern) oder Esc:wq
(um es zu speichern und zu beenden)quelle
Willst du ohne Speichern beenden:
Beenden Sie mit Speichern:
quelle