Unterschiede: 1. Durch Drücken von u in vi kann nur der letzte Befehl rückgängig gemacht werden, in vim können Sie den Befehl jedoch unbegrenzt rückgängig machen. 2. vi kann nur unter Unix ausgeführt werden, während vim auf verschiedenen Betriebssystemplattformen ausgeführt werden kann. vim Es gibt eine Syntaxhervorhebungsfunktion in vi, aber nicht in vi 4. vi unterstützt 3 Modi, während vim 4 Modi usw. unterstützt.
Die Betriebsumgebung dieses Tutorials: CentOS 6-System, Dell G3-Computer.
Beide sind Multimodus-Editoren. Der Unterschied besteht darin, dass vim eine aktualisierte Version von vi ist. Es ist nicht nur mit allen Anweisungen von vi kompatibel, sondern verfügt auch über einige neue Funktionen Es.
Diese Vorteile von vim spiegeln sich hauptsächlich in den folgenden Aspekten wider:
1. Mehrstufiges Rückgängigmachen
Wir wissen, dass Sie in vi durch Drücken von u nur den letzten Befehl rückgängig machen können, während Sie in vim unbegrenzt rückgängig machen können.
2. Benutzerfreundlichkeit
vi kann nur unter Unix ausgeführt werden, während vim nicht nur unter Unix, Windows, Mac und anderen Betriebssystemen ausgeführt werden kann.
3. Syntaxhervorhebung
vim kann verschiedene Farben verwenden, um Ihren Code hervorzuheben.
4. Visueller Betrieb
bedeutet, dass vim nicht nur im Terminal, sondern auch unter X Window, Mac OS und Windows ausgeführt werden kann.
5. Volle Kompatibilität mit vi
In einigen Fällen können Sie vim als vi verwenden.
Vi und vim sind beide Editoren unter Linux. Der Unterschied besteht darin, dass vim fortgeschrittener ist und als aktualisierte Version von vi betrachtet werden kann. vi eignet sich für die Textbearbeitung, vim eignet sich jedoch besser zum Codieren.
VI-Modus
vi verfügt über 3 Modi: Befehlszeilenmodus (Befehlsmodus/allgemeiner Modus), Texteingabemodus (Eingabemodus/Bearbeitungsmodus), Last-Zeile-Modus (Letzte-Zeile-Modus/Befehlszeilenbefehl) Modell).
Befehlszeilenmodus (Befehlsmodus/Normalmodus)
Klicken Sie jederzeit, egal in welchem Modus sich der Benutzer befindet, auf die Taste „ESC“, um in den Befehlszeilenmodus zu gelangen Geben Sie in der Shell-Umgebung (die Eingabeaufforderung ist $) den Befehl „Start Vi“ ein. Wenn Sie den Editor aufrufen, befinden Sie sich ebenfalls in diesem Modus.
In diesem Modus können Benutzer verschiedene legale Vi-Befehle eingeben, um ihre eigenen Dokumente zu verwalten. Zu diesem Zeitpunkt wird jedes über die Tastatur eingegebene Zeichen als Bearbeitungsbefehl interpretiert. Wenn es sich bei dem eingegebenen Zeichen um einen zulässigen Vi-Befehl handelt, führt Vi die entsprechende Aktion nach Annahme des Benutzerbefehls aus. Allerdings ist zu beachten, dass die eingegebenen Befehle nicht auf dem Bildschirm angezeigt werden. Wenn es sich bei den eingegebenen Zeichen nicht um zulässige Befehle für Vi handelt, schlägt Vi Alarm.
Texteingabemodus (Eingabemodus/Bearbeitungsmodus)
Geben Sie im Befehlsmodus den Befehl zum Einfügen i (Einfügen) ein, fügen Sie Befehl a an (Anhängen), öffnen Sie Befehl o (Öffnen), ändern Sie Befehl c (Ändern). ), ersetzen Sie den Befehl r oder ersetzen Sie den Befehl s, um in den Texteingabemodus zu gelangen. In diesem Modus werden alle vom Benutzer eingegebenen Zeichen von Vi als Dateiinhalt gespeichert und auf dem Bildschirm angezeigt. Wenn Sie während der Texteingabe in den Befehlsmodus zurückkehren möchten, drücken Sie einfach die Taste „ESC“.
Letzte-Zeile-Modus (Letzte-Zeile-Modus/Befehlszeilen-Befehlsmodus)
Der Letzte-Zeile-Modus wird auch Ex-Escape-Modus genannt.
Die Funktionen der Vi- und Ex-Editoren sind gleich, der Hauptunterschied zwischen ihnen ist die Benutzeroberfläche. In Vi sind Befehle normalerweise einzelne Tasten wie i, a, o usw.; in Ex sind Befehle Textzeilen, die mit der Eingabetaste enden. Vi verfügt über einen speziellen „Escape“-Befehl, der Zugriff auf viele zeilenorientierte Ex-Befehle bietet.
Im Befehlsmodus drückt der Benutzer die Taste „:“, um in den Modus „Letzte Zeile“ zu gelangen. Zu diesem Zeitpunkt zeigt Vi in der letzten Zeile des Anzeigefensters (normalerweise der letzten Zeile des Bildschirms) ein „:“ an Eingabeaufforderung für den letzten Zeilenmodus, der darauf wartet, dass der Benutzer einen Befehl eingibt. Die meisten Dateiverwaltungsbefehle werden in diesem Modus ausgeführt (z. B. das Schreiben des Inhalts des Bearbeitungspuffers in eine Datei usw.). Nachdem die letzte Befehlszeile ausgeführt wurde, kehrt Vi automatisch in den Befehlsmodus zurück.
VIM-Modus
vim verfügt über insgesamt 4 Modi:
Normalmodus (Normalmodus)
Einfügemodus (Einfügemodus)
Befehlsmodus (Befehlsmodus)
Visual-mode (Visual-mode)
Normaler Modus
Nach dem Start von vim befindet es sich standardmäßig im normalen Modus. Unabhängig davon, in welchem Modus Sie sich befinden, gelangen Sie durch Drücken der <Esc>
-Taste (manchmal müssen Sie sie zweimal drücken) in den normalen Modus.
Einfügemodus
Drücken Sie i, I, a, A und andere Tasten im normalen Modus, um in den Einfügemodus zu gelangen.
Denken Sie jetzt daran, die i-Taste zu drücken, um in den Einfügemodus zu gelangen. Im Einfügemodus werden bei Tastenanschlägen entsprechende Zeichen geschrieben.
Befehlsmodus
Im normalen Modus drücken Sie die Taste : (englischer Doppelpunkt), um in den Befehlsmodus zu gelangen.
Im Befehlsmodus können Sie wie in der Shell einige Eingaben vornehmen und einige Anweisungen ausführen, die von vim oder Plug-ins bereitgestellt werden. Zu diesen Anweisungen gehören das Einrichten der Umgebung, Dateioperationen, das Aufrufen einer Funktion usw.
Häufig verwendete Befehle sind: q (Beenden), q! (Beenden erzwingen), w (Speichern), wq (Speichern und Beenden).
Visueller Modus
Drücken Sie im Normalmodus v, V, <Ctrl>+v
, um in den visuellen Modus zu gelangen.
Die Bedienung im visuellen Modus ähnelt der Bedienung mit einer Maus. Beim Auswählen von Text haben Sie ein visuelles Gefühl für die Mausauswahl, was manchmal sehr praktisch ist.
Verwandte Empfehlungen: „Linux-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Linux vi und vim?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!