Dieser Artikel enthält eine detaillierte Analyse des vi-Befehls. Er ist der Standardeditor unter allen Unix- und Linux-Systemen. Ich hoffe, dass er für alle hilfreich ist.
Hier finden Sie nur eine kurze Einführung in die Verwendung und einen kleinen Teil der Anweisungen. Da der vi-Editor für jede Version von Unix- und Linux-Systemen genau derselbe ist, können Sie überall dort, wo vi eingeführt wird, mehr darüber erfahren. Vi ist auch der einfachste Texteditor unter Linux. Nachdem Sie es gelernt haben, werden Sie in der Linux-Welt keine Probleme haben.
1, das Grundkonzept von vi
Grundsätzlich kann vi in drei Zustände unterteilt werden, nämlich den Befehlsmodus (Befehlsmodus), den Einfügemodus (Einfügemodus) und den Endzeilenmodus (letzter Zeilenmodus). Die Funktionen der Modi werden wie folgt unterschieden:
1) Befehlszeilenmodus)
Steuern Sie die Bewegung des Bildschirmcursors, löschen Sie Zeichen, Wörter oder Zeilen, verschieben und kopieren Sie einen Abschnitt und wechseln Sie in den Einfügemodus, oder gehen Sie zum letzten Zeilenmodus.
2) Einfügemodus(Einfügemodus)
Nur im Einfügemodus ist eine Texteingabe möglich. Drücken Sie die Taste „ESC“, um zum Befehlszeilenmodus zurückzukehren.
3) Letzte Zeile-Modus
Speichern Sie die Datei oder beenden Sie vi. Sie können auch die Bearbeitungsumgebung festlegen, z. B. nach Zeichenfolgen suchen, Zeilennummern auflisten usw.
Wenn wir vi verwenden, vereinfachen wir vi im Allgemeinen in zwei Modi, dh der letzte Zeilenmodus (letzter Zeilenmodus) ist auch im Befehlszeilenmodus (Befehlsmodus) enthalten. 2. Grundoperationen von vi Wechseln Sie in den „Einfügemodus“, um Text einzugeben. Benutzer, die vi zum ersten Mal verwenden, möchten den Cursor zuerst mit den Aufwärts-, Abwärts-, Links- und Rechtstasten bewegen. Dies führt dazu, dass der Computer ständig piept, was sie wütend macht, nachdem sie vi eingegeben haben herum und wechseln Sie in den „Einfügemodus“.
b) Wechseln Sie in den Einfügemodus, um die Datei zu bearbeiten
Klicken Sie im „Befehlsmodus (Befehlsmodus)“ auf den Buchstaben „i“, um in den „Einfügemodus (Einfügemodus)“ zu gelangen. Dann können Sie beginnen Text eingeben. c) Einfügen
SchalterDerzeit können Sie im „Einfügemodus“ nur dann weiter Text eingeben, wenn Sie feststellen, dass Sie das falsche Wort eingegeben haben! Wenn Sie mit den Cursortasten zurückgehen und das Wort löschen möchten, müssen Sie zunächst die Taste „ESC“ drücken, um in den „Befehlsmodus (Befehlsmodus)“ zu gelangen, und dann das Wort löschen. d)
Beenden Sie vi und speichern Sie die DateiKlicken Sie im „Befehlsmodus (Befehlsmodus)“ auf die Doppelpunkttaste „:“, um in den „Letzte-Zeilen-Modus“ zu gelangen, zum Beispiel: : w Dateiname ( Geben Sie „w Dateiname“ ein, um den Artikel mit dem angegebenen Dateinamen (Dateiname) zu speichern , Befehlsmodus (Befehlsmodus) Funktionstaste
1). der aktuelle Cursor. Beginnen Sie mit der Eingabe der Datei an der Position. Wenn Sie „a“ drücken, um in den Einfügemodus zu gelangen, beginnen Sie mit der Texteingabe an der Position neben der aktuellen Cursorposition.
Nachdem Sie „o“ gedrückt haben, um in den Einfügemodus zu gelangen , fügen Sie eine neue Zeile am Anfang der Zeile ein. Beginnen Sie mit der Texteingabe.
2) Wechseln Sie vom Einfügemodus in den BefehlszeilenmodusDrücken Sie die Taste „ESC“. 3
) Um den Cursor zu bewegen vi kann den Cursor direkt auf der Tastatur verwenden, um sich nach oben, unten, links und rechts zu bewegen, aber normales vi verwendet die englischen Kleinbuchstaben „h“, „j“ , „k“ und „l“ steuern jeweils den Cursor, um eine Stelle nach links, unten, oben und rechts zu bewegen. Drücken Sie „Strg“ + „B“: Der Bildschirm bewegt sich eine Seite „zurück“. Drücken Sie „Strg“ + „f“: Der Bildschirm bewegt sich eine Seite „vorwärts“. Drücken Sie „Strg“ + „u“: Der Bildschirm bewegt sich eine halbe Seite „zurück“. Drücken Sie „Strg“ + „D“: Der Bildschirm bewegt sich um eine halbe Seite „vorwärts“. Drücken Sie die Zahl „0“: Gehen Sie zum Anfang des Artikels. Drücken Sie „G“: Gehen Sie zum Ende des Artikels. Drücken Sie „$“: Gehen Sie zum „Ende“ der Zeile, in der sich der Cursor befindet. Drücken Sie „^“: Gehen Sie zum „Anfang“ der Zeile, in der sich der Cursor befindet. Drücken Sie „w“: Der Cursor springt zum Anfang des nächsten Wortes. Drücken Sie „e“. : Der Cursor springt zum nächsten Ende eines Wortes Drücken Sie „b“: Der Cursor kehrt zum Anfang des vorherigen Wortes zurück Drücken Sie „#l“: Der Cursor bewegt sich zur #-ten Position von die Linie, wie zum Beispiel: 5l, 56l. 4). Text löschen „x“: Bei jedem Drücken wird ein Zeichen „hinter“ der Cursorposition gelöscht. 『#x』: „6x“ bedeutet beispielsweise, dass die 6 Zeichen „hinter“ der Cursorposition gelöscht werden. 「X」: Großbuchstaben X, jedes Mal, wenn Sie darauf drücken, wird das Zeichen „vor“ der Cursorposition gelöscht. 「#X」: „20X“ bedeutet beispielsweise, dass die „ersten“ 20 Zeichen an der Cursorposition gelöscht werden. 「dd」: Löschen Sie die Zeile, in der sich der Cursor befindet. 「#dd」:Löschen Sie die #-Zeile beginnend mit der Zeile, in der sich der Cursor befindet 5). Kopieren 「yw」:Kopieren Sie die Zeichen vom Cursor bis zum Ende des Wortes zum Pufferbezirk. 「#yw」:# Wörter in den Puffer kopieren 「yy」:Kopieren Sie die Zeile, in der sich der Cursor befindet, in den Puffer. 『#yy』: „6yy“ bedeutet beispielsweise, dass 6 Textzeilen „heruntergezählt“ von der Zeile kopiert werden, in der sich der Cursor befindet. 「p」: Fügen Sie die Zeichen im Puffer an der Cursorposition ein. Hinweis: Alle Kopierbefehle im Zusammenhang mit „y“ müssen mit „p“ kombiniert werden, um die Kopier- und Einfügefunktionen abzuschließen. 6). Ersetzen Sie „r“: Ersetzen Sie das Zeichen an der Stelle, an der sich der Cursor befindet. 「R」: Ersetzen Sie das Zeichen dort, wo sich der Cursor befindet, bis die Taste „ESC“ gedrückt wird. 7).Zum vorherigen Vorgang zurückkehren „u“: Wenn Sie versehentlich einen Befehl ausführen, können Sie sofort „u“ drücken, um zum vorherigen Vorgang zurückzukehren. Drücken Sie mehrmals „u“, um mehrere Antworten durchzuführen. 8). Ändern „cw“: Ändern Sie das Wort, an dem sich der Cursor am Ende des Wortes befindet „c#w“: „c3w“ bedeutet beispielsweise Ändern von 3 Wörter 9). Zur angegebenen Zeile springen „Strg“ + „g“ listet die Zeilennummer der Zeile auf, in der sich der Cursor befindet. „#G“: „15G“ bedeutet beispielsweise, den Cursor an den Anfang von Zeile 15 des Artikels zu bewegen. 4, Einführung in Befehle im Modus „Letzte Zeile“ Bevor Sie den Modus „Letzte Zeile“ verwenden, denken Sie bitte daran, die Taste „ESC“ zu drücken, um sicherzustellen, dass Sie sich im „Befehlsmodus“ befinden, und drücken Sie dann „:“ Doppelpunkt, um in den „Letzte-Zeile-Modus“ zu gelangen. A) Zeilennummern auflisten 「set nu」: Nach der Eingabe von „set nu“ wird die Zeilennummer vor jeder Zeile in der Datei aufgelistet. B) Zu einer bestimmten Zeile in der Datei springen 「#」: Geben Sie eine Zahl nach dem Doppelpunkt ein und drücken Sie die Eingabetaste, um zu dieser Zeile zu springen Geben Sie die Zahl 15 ein und drücken Sie die Eingabetaste, um zur Zeile 15 des Artikels zu springen. C) Nach Zeichen suchen 「/Schlüsselwort」: Drücken Sie zuerst die Taste 「/」 und geben Sie dann das Zeichen ein, nach dem Sie zum ersten Mal suchen Wenn Sie möchten, können Sie weiterhin 「 n drücken. Die Suche wird fortgesetzt, bis das gewünschte Schlüsselwort gefunden wird. 『?Schlüsselwort』: Drücken Sie zuerst die Taste „?“ und geben Sie dann die Zeichen ein, nach denen Sie zum ersten Mal suchen möchten, können Sie weiterhin „n“ und drücken Es wird nach dem von Ihnen gewünschten Schlüsselwort gesucht. D) Speichern Sie die Datei 「w」: Geben Sie den Buchstaben „w“ in den Doppelpunkt ein, um die Datei zu speichern. E) Vi verlassen 「q」: Wenn Sie vi nicht verlassen können, können Sie „!“ erzwingen, um vi nach „q“ zu verlassen. "qw": Es wird generell empfohlen, es beim Verlassen mit "w" zu verwenden, damit die Datei beim Beenden gespeichert werden kann. 5, vi-Befehlsliste 1, Die folgende Tabelle listet die Funktionen einiger Tasten im Befehlsmodus auf: h Bewegen Sie den Cursor um ein Zeichen nach links. l Bewegen Sie die Cursor nach rechts. Ein Zeichen bewegt sich zum Anfang des Artikels G Bewegen Sie den Cursor an das Ende des Artikels $ Bewegen Sie den Cursor an das Ende der Zeile Strg+f, um vorwärts zu scrollen Strg +b, um rückwärts zu scrollen Strg+d, um die Hälfte des Bildschirms vorwärts zu scrollen Strg+u, um den halben Bildschirm rückwärts zu blättern iZeichen vor der Cursorposition einfügen aMit dem Hinzufügen von Zeichen nach dem Cursor beginnen Position oFügen Sie eine neue Zeile ein. Beginnen Sie mit der Eingabe am Anfang der Zeile. ESC, um vom Eingabestatus in den Befehlsstatus zurückzukehren. x Löschen Sie die Zeichen hinter dem Cursor. #x Löschen Sie die # Zeichen nach dem Cursor Zeile an der Cursorposition #yyKopiere # Zeilen von der Cursorposition pEinfügen uBrech den Vorgang ab cw ändert ein Zeichen an der Cursorposition #cw ändert # Zeichen An der Cursorposition w Dateiname Speichern Sie die zu bearbeitende Datei unter Dateiname wq Dateiname Speichern Sie die zu bearbeitende Datei als Dateinamen und beenden Sie vi q! Alle Änderungen verwerfen, vi beenden nu setzen Zeilennummer anzeigen /oder ? Suchen: Geben Sie ein, was Sie suchen möchten, nach / n Verwenden Sie zusammen mit / oder ? /) oder vorwärts (verwendet mit ?), um mit der Suche fortzufahren, bis Sie es gefunden haben. 1. Nachdem Sie eine Datei mit vi geöffnet haben, müssen Sie in den „Einfügemodus“ wechseln, bevor Sie Text eingeben können. Umschaltmethode: Klicken Sie im „Befehlsmodus“ auf den Buchstaben „i“, um in den „Einfügemodus“ zu gelangen. Jetzt können Sie mit der Texteingabe beginnen. 2. Nach der Bearbeitung müssen Sie vom Einfügemodus in den Befehlszeilenmodus wechseln, um die Datei zu speichern: Drücken Sie die Taste „ESC“. 3. Speichern und beenden Sie die Datei: Geben Sie im Befehlsmodus Folgendes ein: wq! (Wq davor nicht vergessen:) Auf dem Bildschirm bewegen Vi bietet drei Befehle zum Bewegen des Cursors auf dem gesamten Bildschirm, ohne in der Datei selbst zu scrollen. Es handelt sich jeweils um die Befehle H, M und L. HBefehl Dieser Befehl bewegt den Cursor an den Anfang der ersten Zeile des Bildschirms (d. h. in die obere linke Ecke), was die erste Zeile des aktuellen Bildschirms ist, nicht die erste Zeile des gesamten Bildschirms Datei. Mit diesem Befehl können Sie den Cursor schnell an den oberen Bildschirmrand bewegen. Wenn Sie vor dem H-Befehl die Zahl n hinzufügen, wird der Cursor an den Anfang der n-ten Zeile verschoben. MBefehl Dieser Befehl bewegt den Cursor an den Anfang der mittleren Zeile der Bildschirmanzeigedatei. Das heißt, wenn der aktuelle Bildschirm voll ist, gehen Sie zur mittleren Zeile des gesamten Bildschirms; wenn er nicht voll ist, gehen Sie zur mittleren Zeile dieser Textzeilen. Mit diesem Befehl können Sie den Cursor schnell von einer beliebigen Position auf dem Bildschirm an den Anfang der mittleren Zeile der Bildschirmanzeigedatei bewegen. Im Fall der obigen Bildschirmanzeige (unabhängig davon, wo sich der Cursor auf dem Bildschirm befindet) bewegt sich der Cursor im Befehlsmodus nach Eingabe des Befehls M zum Buchstaben a in der Add-Zeile. Erwähnenswert ist auch, dass mit dem Befehl dM der gesamte Inhalt von der aktuellen Cursorzeile bis zur mittleren Zeile der auf dem Bildschirm angezeigten Datei gelöscht wird. LBefehl Wenn der Dateianzeigeinhalt einen Bildschirm überschreitet, bewegt dieser Befehl den Cursor an den Anfang der unteren Zeile auf dem Bildschirm; wenn der Dateianzeigeinhalt weniger als einen Bildschirm beträgt, verschiebt dieser Befehl den Cursor auf den Anfang der letzten Zeile der Datei. Es ist ersichtlich, dass Sie mit diesem Befehl den Cursor schnell und präzise an den unteren Bildschirmrand oder in die letzte Zeile der Datei bewegen können. Wenn Sie vor dem L-Befehl die Zahl n hinzufügen, wird der Cursor an den Anfang der n-ten Zeile vom unteren Bildschirmrand verschoben. Im Fall der obigen Bildschirmanzeige (unabhängig davon, wo sich der Cursor auf dem Bildschirm befindet) bewegt sich der Cursor beispielsweise im Befehlsmodus nach Eingabe des Befehls 3L zum Buchstaben x in der Zeile x++. Erwähnenswert ist auch, dass mit dem Befehl dL der gesamte Inhalt von der aktuellen Cursorzeile bis zur unteren Bildschirmzeile gelöscht wird. Bewegen Sie den Cursor wortweise Lassen Sie uns zunächst das Konzept des „Worts“ in Vi einführen. „Wort“ hat in Vi zwei Bedeutungen. Eins ist ein weites Wort, das alles zwischen zwei Leerzeichen sein kann. Eine andere Art von Wort ist ein Wort im engeren Sinne. Englische Wörter, Satzzeichen und nicht alphabetische Zeichen (z. B.!, @, #, $, %, ^, &, *, (,), - , +, {, }, [,], ~, |, ", <, >, / usw.) werden als ein Wort betrachtet. Daher enthält die obige Zeile {, int, k,; diese vier Wörter Die Verwendung von Großbuchstaben in Vi bedeutet im Allgemeinen, dass Wörter im weitesten Sinne behandelt werden, und die Verwendung von Kleinbuchstaben bedeutet, dass sie in einem engeren Sinne behandelt werden. Nachdem wir die Bedeutung von Wörtern in Vi verstanden haben, können wir den Befehl zum Bewegen des Cursors einführen Wort. Vi bietet insgesamt drei Befehlssätze zum Bewegen des Cursors wortweise, nämlich: w und W-Befehl , um den Cursor direkt an den Anfang des nächsten Wortes zu bewegen; e und E-BefehlWenn sich die Startposition des Cursors innerhalb des Wortes befindet (d. h. nicht am Ende des Wortes), bewegt dieser Befehl den Cursor an das Ende des Wortes; Wenn sich der Cursor am Ende des Wortes befindet, bewegt dieser Befehl den Cursor zum Ende des nächsten Wortes b und B Wenn sich der Cursor innerhalb des aktuellen Wortes befindet (d. h. nicht am Anfang). des Wortes) bewegt dieser Befehl den Cursor an den Anfang des aktuellen Wortes; wenn sich der Cursor am Anfang des aktuellen Wortes befindet, bewegt dieser Befehl den Cursor an den Anfang des vorherigen Wortes Cursor für Satz In Vi ist ein Satz so definiert, dass er mit einem Komma (,), einem Punkt (.) oder einem Fragezeichen (?) und einem Ausrufezeichen (!) beginnt, gefolgt von mindestens zwei (einschließlich zwei) Leerzeichen oder eine Zeilenumbruch-Zeichenfolge Vi bietet zwei Befehle zum satzweisen Bewegen des Cursors: Bewegen Sie den Cursor an den Anfang des vorherigen Satzes. 2. ) Befehl Dieser Befehl bewegt den Cursor an den Anfang des nächsten Satzes. Bewegen Sie den Cursor segmentweise. In Vi ist ein Segment als ein Fragment definiert, das mit einer Leerzeile beginnt und endet. Vi bietet zwei Befehle zum Bewegen des Cursors nach Segment, nämlich: Befehl Dieser Befehl bewegt den Cursor vorwärts zum Anfang des vorherigen Segments Dieser Befehl bewegt den Cursor zurück zum Anfang des nächsten Absatzes. Bildschirmscrollen Bildschirmbefehle bewegen den Cursor in Bildschirmeinheiten und werden häufig zum Scrollen und Blättern in Dateien verwendet. Es ist zu beachten, dass Bildschirmbefehle keine Cursorbewegungsbefehle sind und nicht als Textqualifizierer in Löschbefehlen verwendet werden können. Befehle zum Scrollen des Bildschirms sind sowohl im Befehlsmodus als auch im Texteingabemodus verfügbar. Es gibt zwei Scrollbefehle: · < Strg+u > Scrollen Sie den Bildschirm um die Hälfte des Bildschirms +d > Scrollen Sie den halben Bildschirm rückwärts (zum Ende der Datei). Sie können vor diesen beiden Befehlen eine Zahl n hinzufügen, und der Bildschirm scrollt n Zeilen vorwärts oder rückwärts. Und dieser Wert wird vom System gespeichert, wenn Sie in Zukunft die Befehle < Es gibt auch zwei Paging-Befehle: · < Strg+f > Scrollen Sie bis zum Ende der Datei (d. h. eine Seite); · < Strg+b > Scrollen Sie auf dem Bildschirm um eine ganze Seite (d. h.) zum Anfang des Dokuments. Sie können vor diesen beiden Befehlen auch eine Zahl n hinzufügen, und der Bildschirm bewegt sich n Seiten vorwärts oder rückwärts. zeigt die vi-Statusinformationen in der vi-Statuszeile an, einschließlich des Namens der bearbeiteten Datei, der aktuellen Zeile Anzahl und die Anzahl der Zeilen in der Datei sowie der Prozentsatz der Zeile vor dem Cursor in der gesamten Datei. Befehle zum Nullstellen des BildschirmsVi bietet drei Befehle zum Nullstellen des Bildschirms. Ihre Formate sind: · [Zeilennummer] z [Anzahl der Zeilen] · [Zeilennummer] z [Anzahl der Zeilen] .· [Zeilennummer] z [Anzahl der Zeilen] _ Wenn die Zeilennummer und die Zeilennummer weggelassen werden, zeigen diese drei Befehle die aktuelle Zeile, in der sich der Cursor befindet, als erste Zeile, mittlere Zeile und letzte Zeile des Bildschirms erneut an Die Zeile wird als aktuelle Zeile in der ersten Zeile, der mittleren Zeile und der letzten Zeile des Bildschirms angezeigt. Wenn die Zeilennummer angegeben ist, gibt sie die Anzahl der auf dem Bildschirm angezeigten Zeilen an. [Beispiel 13] 8z16 15z.: Verwenden Sie die 15. Zeile in der Datei als mittlere Zeile der Bildschirmanzeige, und die Anzahl der angezeigten Zeilen entspricht dem gesamten Bildschirm. 15z 5_: Verwenden Sie die 15. Zeile in der Datei als letzte auf dem Bildschirm angezeigte Zeile, und die Anzahl der angezeigten Zeilen beträgt 5. Texteinfügungsvorgang Im Befehlsmodus werden alle vom Benutzer eingegebenen Zeichen von Vi als Befehl interpretiert und ausgeführt. Wenn der Benutzer die eingegebenen Zeichen als Textinhalt behandeln möchte, sollte er zunächst den Arbeitsmodus von Vi ändern Der Modus wechselt in den Texteingabemodus. Der Wechsel erfolgt über den folgenden Befehl. Vi bietet zwei Einfügebefehle: i und I. Fügen Sie Text beginnend vor der Cursorposition ein, und Sie können falsche Eingaben während des Einfügevorgangs mit den Tasten löschen. Zu diesem Zeitpunkt befindet sich Vi im Einfügestatus und das Wort „--INSERT--“ (Einfügen) wird in der unteren Zeile des Bildschirms angezeigt. BefehlDieser Befehl bewegt den Cursor an den Anfang der aktuellen Zeile und fügt davor Text ein. Befehl „Anhängen“ Vi bietet zwei Befehle zum Einfügen von Anhängen: a und A. ein Mit diesem Befehl wird neuer Text nach der aktuellen Cursorposition eingefügt. Der neu eingegebene Text wird hinter dem Cursor platziert und der ursprüngliche Text hinter dem Cursor wird entsprechend nach hinten verschoben. Der Cursor kann sich an einer beliebigen Stelle in der Zeile befinden. ABefehl Der Unterschied zwischen diesem Befehl und dem a-Befehl besteht darin, dass der A-Befehl den Cursor an das Ende der Zeile bewegt und von dort aus neuen Text einfügt. Bei Eingabe des A-Befehls bewegt sich der Cursor automatisch an das Ende der Zeile. a- und A-Befehle sind die einzige Möglichkeit, Text am Ende der Zeile einzufügen. Befehl öffnen Ob es sich um den Befehl „Einfügen“ oder „Anhängen“ handelt, der eingefügte Inhalt beginnt an einer bestimmten Position in der aktuellen Zeile. Wenn wir vor oder nach einer bestimmten Zeile einige neue Zeilen einfügen möchten, sollten wir den Befehl open verwenden. Vi bietet zwei offene Befehle: o und O. oBefehl Dieser Befehl öffnet eine neue Zeile unterhalb der Zeile, in der sich der Cursor befindet, platziert den Cursor am Anfang der Zeile und wartet auf die Texteingabe. Es ist zu beachten, dass bei Verwendung von Löschzeichen nur Zeichen nach der Startposition des Einfügemodus gelöscht werden können und vorherige Zeichen nicht funktionieren. Sie können einige Steuerzeichen auch im Texteingabemodus eingeben. Mit Strg+l wird beispielsweise ein Seitenumbruch eingefügt, der als ^L angezeigt wird. Der Befehl O ist das Gegenteil des Befehls o. Der Befehl O fügt eine Zeile über der Zeile ein, in der sich der Cursor befindet, und platziert den Cursor am Anfang der Zeile und wartet auf die Texteingabe. 11.3.4 TextänderungIm Befehlsmodus können Sie verschiedene verwandte Befehle von Vi verwenden, um den Text zu ändern, einschließlich Löschen, Kopieren, Ersetzen und Ersetzen von Textinhalten usw. 1. Einzelnes Zeichen löschenx: Das Zeichen am Cursor löschen. Wenn vor x eine Zahl n eingefügt wird, werden n Zeichen rechts ab der Cursorposition gelöscht. 2. Mehrere Zeichen löschenhinzufügen: Die gesamte Zeile löschen, in der sich der Cursor befindet. Sie können vor dd eine Zahl n hinzufügen, um die aktuelle Zeile und die folgenden n-1 Zeilen zu löschen. Abschließend erfahren Sie, wie Sie den eingegebenen Text im Texteingabemodus löschen. Der Benutzer kann einfach die Tastenkombination verwenden. Zu diesem Zeitpunkt kehrt der Cursor zu der Position zurück, an der die Einfügung begonnen hat, und Vi befindet sich immer noch im Texteingabemodus. Vorherigen Befehl abbrechen (Rückgängig machen) Vorherigen Befehl abbrechen (Rückgängig machen), auch Wiederherstellungsbefehl genannt, ist ein sehr nützlicher Befehl. Er kann die Auswirkungen der vorherigen Fehlbedienung oder unangemessenen Operation auf die Datei rückgängig machen. , um den Zustand wiederherzustellen, bevor eine solche Fehlbedienung oder unangemessene Operation durchgeführt wurde. Es gibt zwei Möglichkeiten, den vorherigen Befehl abzubrechen: Geben Sie im Befehlsmodus die Zeichen u und U ein. Ihre Funktion besteht darin, den gerade eingegebenen Befehl abzubrechen und die ursprüngliche Situation wiederherzustellen. Kleinbuchstabe u und Großbuchstabe U unterscheiden sich in bestimmten Details. Der Unterschied zwischen den beiden besteht darin, dass die Funktion des Großbuchstaben-U-Befehls darin besteht, die Situation wiederherzustellen, bevor der Befehl fälschlicherweise ausgeführt wurde, d. Der gerade eingefügte Inhalt wird gelöscht. Wenn Sie nach dem Löschen eines Befehls den U-Befehl verwenden, entspricht dies dem Einfügen des gerade gelöschten Inhalts am Cursor. Als Einfügebefehle gelten hier alle Befehle, die Text verändern. Mit anderen Worten, der U-Befehl kann nur den vorherigen Vorgang abbrechen. Wenn Sie den U-Befehl verwenden, um den vorherigen Vorgang rückgängig zu machen, wird beim erneuten Drücken der U-Taste nicht der vorherige Vorgang rückgängig gemacht, sondern der gerade von U ausgeführte Vorgang Das heißt, es wird in den Zustand vor der ersten Verwendung des U-Befehls zurückversetzt, und das Ergebnis ist, dass nichts unternommen wird. Die Funktion des kleingeschriebenen u-Befehls besteht darin, die aktuelle Zeile in den Zustand vor der Bearbeitung zurückzusetzen, unabhängig davon, wie oft die Zeile bearbeitet wurde. Hinweis: Sie können weiterhin den Abbruchbefehl für den Abbruchbefehl verwenden. Zu diesem Zeitpunkt wird der Effekt „Negativ macht positiv“ erzeugt und der Dateistatus wird auf den Zustand vor der ersten Ausführung des Abbruchbefehls zurückgesetzt, als ob keine Operation ausgeführt worden wäre. Wenn Sie beispielsweise im obigen Beispiel erneut den Befehl U verwenden, handelt es sich bei dem auf dem Bildschirm angezeigten Inhalt weiterhin um den eingefügten Inhalt. Wiederholungsbefehl (Wiederherstellen) Der Wiederholungsbefehl ist ebenfalls ein sehr häufig verwendeter Befehl. Bei der Textbearbeitung müssen wir häufig bestimmte Vorgänge mechanisch wiederholen. In diesem Fall müssen wir den Befehl „Wiederholen“ verwenden. Es ermöglicht Benutzern die einfache Ausführung eines komplexen Befehls, den sie gerade zuvor ausgeführt haben. Wiederholungsbefehle können nur im Befehlsmodus funktionieren. Drücken Sie in diesem Modus einfach die Taste „.“ Bei der Ausführung eines wiederholten Befehls ist das Ergebnis von der aktuellen Position des Cursors abhängig. Änderung des Textinhalts Änderung des Textinhalts bedeutet, dass während des Bearbeitungsprozesses bestimmte Zeichen und Zeilen im Text geändert werden können, d. h. der alte Text, der geändert werden muss, wird durch den neu eingegebenen Text ersetzt Es entspricht der Verwendung des Löschbefehls zum Löschen des zu ändernden Inhalts und der anschließenden Verwendung des Einfügebefehls zum Einfügen neuer Inhalte. Daher wechselt vi nach Verwendung des Änderungsbefehls in den Texteingabemodus. Stellen Sie nach der Eingabe des neuen Inhalts sicher, dass Sie in den Befehlsmodus zurückkehren, da Vi sonst immer davon ausgeht, dass es sich im Texteingabemodus befindet, und alle bei eingegebenen Inhalte Dieses Mal gelten alle als geänderte neue Inhalte. Vi bietet drei Änderungsbefehle, nämlich c, C und cc. Der von ihnen geänderte Textbereich wird sowohl durch die Cursorposition als auch durch den Cursorbewegungsbefehl begrenzt. Diese drei Änderungsbefehle werden im Folgenden vorgestellt. Auf den Befehl cc c folgt der Befehl zur Cursorbewegung, der den Umfang des geänderten Inhalts so begrenzt, dass er von der aktuellen Position des Cursors auf die angegebene Position beginnt. Der Bereich des geänderten Texts in Befehl c wird sowohl durch die Cursorposition als auch durch den Cursorbewegungsbefehl begrenzt. C, c$-Befehl C, c$-Befehl kann den Inhalt von der aktuellen Position des Cursors bis zum Ende der Zeile oder von der aktuellen Position des Cursors bis zum Ende einer Zeile ändern. Wenn die Zahl n vor Befehl C hinzugefügt wird, bedeutet dies, dass der Inhalt der angegebenen Anzahl von Zeilen geändert werden kann. Beispielsweise bedeutet der Befehl 3C, dass der Inhalt vom Zeichen an der Cursorposition (beachten Sie nicht die gesamte Zeile) bis zu den folgenden beiden gesamten Zeilen gelöscht und durch den anschließend eingegebenen Inhalt ersetzt wird. ccCommand cc-Befehl hat die gleiche Funktion wie C, aber der Änderungsbereich unterscheidet sich von C. Er ändert sich von der Startposition der Zeile, in der sich der Cursor befindet (unabhängig davon, in welcher Spalte sich der Cursor befindet). in der Zeile) bis zur Zeile Das Ende oder der Inhalt innerhalb des Bereichs, der das Ende einer Zeile angibt. Der gesamte Inhalt der Zeile, in der sich der Cursor befindet, wird durch den neu eingegebenen Inhalt ersetzt. Wie bei Befehl C können Sie auch die Zahl n vor cc hinzufügen, um anzugeben, dass Sie insgesamt n Zeilen beginnend mit der aktuellen Zeile des Cursors ändern möchten. Beispielsweise bedeutet 5cc, dass zuerst die Zeile, in der sich der Cursor befindet, und die 4 Zeilen darunter gelöscht werden und dann der zu ändernde Inhalt eingegeben wird. Textersetzung Bei der Textersetzung wird der vorhandene Text durch den neu eingegebenen Text ersetzt. Dies ist dasselbe wie bei der Textänderung. Außerdem wird zuerst der Löschvorgang und dann der Einfügevorgang ausgeführt. Zu den von Vi bereitgestellten Ersetzungsbefehlen gehören Ersetzungsbefehl, Ersetzungsbefehl und Wortersetzungsbefehl. 1. Ersetzungsbefehl: r und R r: Ersetzen Sie das Zeichen am aktuellen Cursor durch ein nachfolgend eingegebenes Zeichen. R: Ersetzen Sie mehrere Zeichen ab dem aktuellen Cursor durch den nachfolgend eingegebenen Text, bis die Taste < gedrückt wird. Wenn die Anzahl der neu eingegebenen Zeichen die Anzahl der ursprünglichen entsprechenden Zeichen übersteigt, wird der zusätzliche Teil angehängt. Wenn Sie vor dem Befehl R eine Zahl hinzufügen, z. B. 5R, bedeutet dies, dass der neu eingegebene Text fünfmal wiederholt wird, aber nur eine vom Eingabetext abgedeckte Zeichenfolge ersetzt und der nicht wiederhergestellte Inhalt in der aktuellen Zeile unverändert bleibt bleibt erhalten, die Position verschiebt sich jedoch entsprechend nach rechts. Es ist erwähnenswert, dass beim Ersetzen von Textinhalten mit R der neu eingegebene Text mehrere Zeilen belegen kann. Beim Ersetzen werden nur die entsprechenden Zeichen in der Zeile überschrieben, in der sich der Cursor befindet. Es ist ersichtlich, dass die neu eingegebenen 6 Zeichen (einschließlich Leerzeichen, aber ohne < Esc >) die 6 Zeichen in der ursprünglichen Zeile ersetzen. 2. Ersetzungsbefehl: s und S s (Kleinbuchstaben): Dieser Befehl bedeutet, das Zeichen, an dem sich der aktuelle Cursor befindet, durch den anschließend eingegebenen Text zu ersetzen. Wenn Sie nur das Zeichen an der Stelle, an der sich der Cursor befindet, durch ein neues Zeichen ersetzen, hat der Befehl s ähnliche Funktionen wie der Befehl r. Beispielsweise ändern sh und rh beide das Zeichen an der Stelle, an der sich der Cursor befindet, in h. Es gibt jedoch Unterschiede zwischen den beiden. Der Befehl r schließt nur die Ersetzung ab, während der Befehl s den Arbeitsmodus vom Befehlsmodus in den Texteingabemodus ändert, während er die Ersetzung abschließt. Daher lautet die allgemeine Verwendung des Befehls s: Auf s folgt der zu ersetzende Text, und schließlich muss der Texteingabemodus beendet und in den Befehlsmodus zurückgekehrt werden. Sie können vor s eine Zahl n hinzufügen, was bedeutet, dass der nach s eingegebene Text verwendet wird, um n-1 Zeichen zu ersetzen, beginnend mit dem Zeichen, an dem sich der Cursor befindet, und danach (insgesamt n Zeichen). S (Großbuchstaben): Dieser Befehl bedeutet, die aktuelle Zeile (gesamte Zeile) des Cursors durch den neu eingegebenen Text zu ersetzen (unabhängig davon, in welcher Spalte sich der Cursor befindet). Wenn vor S eine Zahl n angegeben wird, beispielsweise 3, bedeutet dies, dass 3 Zeilen (einschließlich der aktuellen Zeile des Cursors und der 2 Zeilen darunter) durch den nach dem S-Befehl eingegebenen Text ersetzt werden sollen. 3. Wortersetzung cw Wenn wir nur den Inhalt eines bestimmten Wortes durch andere Textzeichenfolgen ersetzen möchten, können wir den Befehl cw verwenden. Was cw ersetzt, ist ein Wort im engeren Sinne. Nach Eingabe dieses Befehls löscht Vi das Wort am Cursor und der Benutzer kann dann einen beliebigen Textinhalt eingeben. Nachdem Sie die Eingabe abgeschlossen haben, drücken Sie die Taste und Vi ersetzt alles von der ursprünglichen Cursorposition bis zum Ende des entsprechenden Wortes durch den eingegebenen Inhalt. Textzeilen zusammenführen Vi bietet Befehle zum Zusammenführen bestimmter Zeilen im Text. Dieser Befehl wird durch J (Großbuchstabe) dargestellt und seine Funktion besteht darin, die Zeile, in der sich der Cursor befindet, und die Zeile darunter in einer Zeile zusammenzuführen. Wenn vor dem J-Befehl eine Zahl n, z. B. 3, angegeben wird, bedeutet dies, dass die aktuelle Zeile des Cursors und die 2 darauf folgenden Zeilen (insgesamt 3 Zeilen) zu einer Zeile zusammengeführt werden. Textzeilen verschieben In Vi können wir Textzeilen problemlos innerhalb eines bestimmten Bereichs nach links oder rechts oder von einer Stelle zur anderen verschieben. Textzeilen nach links und rechts verschieben. Es gibt vier Befehle zum Verschieben von Textzeilen nach links und rechts: >, <, >> Der Befehl (1)> verschiebt die begrenzte Textzeile (die erste Zeile des Bildschirms) nach rechts, normalerweise um 8 Leerzeichen, unter Verwendung des Formats: > Der Bereich der beweglichen Textzeilen wird durch die Zeile, in der sich der Cursor befindet, und den anschließend eingegebenen Cursorbewegungsbefehl begrenzt. Der Befehl (2)< verschiebt die begrenzte Textzeile nach links. Er wird auf die gleiche Weise wie der Befehl > verwendet, mit der Ausnahme, dass die Bewegungsrichtung entgegengesetzt ist. Beispielsweise verschiebt <6M jede Zeile zwischen der aktuellen Zeile des Cursors und der mittleren Zeile der Bildschirmanzeige um 8 Stellen nach links. Der Befehl (3)>> verschiebt die Zeile, in der sich der Cursor befindet, um 8 Leerzeichen nach rechts. Wenn vor dem Befehl >> eine Zahl n, beispielsweise 4, angegeben wird, bedeutet dies, dass die aktuelle Zeile des Cursors und die 3 Zeilen darunter (insgesamt 4 Zeilen) um 8 Leerzeichen nach rechts verschoben werden. (4)<< Der Befehl verschiebt die Zeile, in der sich der Cursor befindet, um 8 Leerzeichen nach links. Seine Verwendung ist die gleiche wie beim Befehl >>, mit der Ausnahme, dass die Bewegungsrichtung entgegengesetzt ist. Zwischenzeilenverschieben von Textzeilen Mit den folgenden Schritten können Sie Textzeilen von einem Ort zum anderen verschieben. Bewegen Sie den Cursor auf die erste Zeile des zu verschiebenden Textes; Drücken Sie den Befehl ndd. Dabei ist n die Anzahl der zu verschiebenden Zeilen. Zu diesem Zeitpunkt löscht Vi die zu verschiebende Textzeile aus der Datei und fügt sie in das Löschregister Nr. 1 ein. Bewegen Sie den Cursor zur Zielzeile. Drücken Sie ² 1p, um die zu verschiebende Textzeile zu löschen aus dem Register gelöscht. Zu diesem Zeitpunkt wird die zu verschiebende Textzeile am Zielort angezeigt. Obwohl die obige Methode die Bewegung von Textzeilen zwischen Zeilen realisieren kann, ist sie offensichtlich zu umständlich. Vi bietet auch eine weitere schnelle Methode, nämlich die Verwendung des Befehls m (Verschiebungsbefehl) im letzten Zeilenmodus. Die Verwendungsmethode ist n m k, was bedeutet, dass die n-te Zeile unter die k-te Zeile verschoben wird. Wenn Sie nun Zeile 5 auf Zeile 4 verschieben möchten, können Sie im letzten Zeilenmodus Folgendes eingeben: :5 m 3 Vor dem Befehl m können Sie auch einen Zeilennummernbereich angeben (die Startzeilennummer lautet). ist dasselbe wie die Nummer der abschließenden Zeile und gibt an, dass die Textzeilen innerhalb des angegebenen Bereichs an die angegebene Position verschoben werden sollen. Beispiel: :2, 5 m 0 bedeutet, dass der Inhalt der zweiten bis fünften Zeile in der Datei in den Dateikopf verschoben wird (unterhalb der nullten Zeile ist diese Nullzeile eine Dummy-Zeile). Zeilennummern in Vi Viele Befehle in Vi verwenden Werte wie Zeilennummern und Zeilennummern. Wenn die zu bearbeitende Datei groß ist, ist es sehr umständlich, sie selbst zu zählen. Zu diesem Zweck bietet Vi die Funktion, dem Text Zeilennummern hinzuzufügen. Diese Zeilennummern werden auf der linken Seite des Bildschirms angezeigt und der Inhalt der entsprechenden Zeile wird nach der Zeilennummer angezeigt. Der verwendete Befehl lautet: Geben Sie den Befehl im letzten Zeilenmodus ein: :Nummer festlegen Es ist zu beachten, dass die hier hinzugefügten Zeilennummern nur dem Benutzer angezeigt werden und nicht Teil des Dateiinhalts sind. In einer größeren Datei muss der Benutzer möglicherweise wissen, in welcher Zeile sich der Cursor gerade befindet und wo er sich in der Datei befindet. Zu diesem Zeitpunkt zeigt Vi die entsprechende Zeile an letzte Zeile des Anzeigefensters. Dieser Befehl kann jederzeit verwendet werden. Im letzten Zeilenmodus können wir den Befehl nu (Abkürzung für Wortnummer) eingeben, um die Zeilennummer und den Inhalt der aktuellen Zeile unter dem Cursor abzurufen. Cursorbewegungsvorgang Im Vollbild-Texteditor ist der Cursorbewegungsvorgang zweifellos der am häufigsten verwendete Vorgang. Nur wenn Benutzer diese Befehle geschickt nutzen, um den Cursor zu bewegen, können sie schnell und genau die gewünschte Stelle zum Bearbeiten erreichen. Die Cursorbewegung in Vi kann im Befehlsmodus oder im Texteingabemodus erfolgen, die Bedienungsmethoden sind jedoch unterschiedlich. Im Texteingabemodus können Sie den Cursor direkt mit den vier Richtungstasten auf der Tastatur bewegen. Im Befehlsmodus gibt es viele Möglichkeiten, den Cursor zu bewegen. Sie können nicht nur die vier Richtungstasten verwenden, um den Cursor zu bewegen, sondern Sie können anstelle der vier Richtungstasten auch die vier Tasten h, j, k und l verwenden, um den Cursor zu bewegen. Dadurch können Konflikte vermieden werden, die durch unterschiedliche Tastaturdefinitionen verursacht werden auf verschiedenen Maschinen, und nachdem Sie damit vertraut sind, können Sie alle Vorgänge ausführen, ohne die Hände auf der Buchstabentastatur zu lassen, wodurch die Arbeitseffizienz verbessert wird. Darüber hinaus können Sie zum Bewegen des Cursors auch die vier Tasten , , und oder Tastenkombinationen verwenden. Und die oben genannten drei Arten von Schlüsseln sind in ihrer Funktionalität gleichwertig. Darüber hinaus gibt es einige Befehle zum Bewegen des Cursors. Im Folgenden finden Sie eine Einführung in deren Funktionsweise: , ® (beides rechte Tasten genannt) Die Funktion der rechten Taste besteht darin, den Cursor eine Position nach rechts zu bewegen. Wenn Sie eine Zahl n eingeben, bevor Sie die rechte Taste drücken, bewegt sich der Cursor um n Positionen nach rechts. Beispielsweise bedeutet 5l, dass sich der Cursor um 5 Positionen nach rechts bewegt. Es ist zu beachten, dass der Cursor nicht über das Ende der aktuellen Zeile hinausgehen kann. Wenn das angegebene n die Anzahl der Zeichen von der aktuellen Cursorposition bis zum Ende der Zeile überschreitet, kann der Cursor nur dann zum Ende der Zeile bewegt werden, wenn Sie die rechte Pfeiltaste verwenden Der Cursor bewegt sich an die entsprechende Position in einer oder mehreren Zeilen darunter. h,,¬ (linke Taste) Führen Sie die linke Taste einmal aus und der Cursor bewegt sich eine Position nach links. Wie bei der rechten Taste können Sie auch vor der linken Taste eine Zahl n eingeben und der Cursor bewegt sich um n Positionen nach links. Beachten Sie, dass der Cursor bei Verwendung der linken Pfeiltaste nicht nach links über den Zeilenanfang hinaus bewegt werden kann. Bei Verwendung der linken Pfeiltaste bewegt sich der Cursor an die entsprechende Position in einer oder mehreren Zeilen darüber. j,, ¯ (Abwärtstaste) Führen Sie die Abwärtstaste einmal aus, um den Cursor um eine Position (d. h. eine Zeile) nach unten zu bewegen, aber die Spalte, in der sich der Cursor befindet, bleibt unverändert. Wenn diesen Befehlen die Zahl n vorangestellt ist, bewegt sich der Cursor n Zeilen nach unten. Zusätzlich zur Verwendung der Abwärtstaste, um den Cursor nach unten zu bewegen, kann Vi auch die Taste und die „+“-Taste verwenden, um den Cursor eine Zeile oder n Zeilen nach unten (mit Ausnahme dieser Zeile) zu bewegen, aber zu diesem Zeitpunkt wird der Cursor sein am ersten Zeichen der Zeile. Beispiel: 3j Der Cursor bewegt sich 3 Zeilen nach unten und die Position der Spalte, in der sich der Cursor befindet, bleibt unverändert. 3+ oder 3 Der Cursor bewegt sich 3 Zeilen nach unten und der Cursor befindet sich am Anfang der Zeile. k,, (Aufwärtstaste) Führen Sie die Aufwärtstaste einmal aus, um den Cursor um eine Position (d. h. eine Zeile) nach oben zu bewegen, aber die Spalte, in der sich der Cursor befindet, bleibt unverändert. Fügen Sie vor diesen Befehlen außerdem die Zahl n hinzu, um den Cursor um n Zeilen nach oben zu bewegen. Wenn Sie möchten, dass der Cursor nach dem Aufwärtsbewegen am Anfang der Zeile steht, können Sie den Befehl „-“ verwenden. L (zum Anfang der Zeile bewegen) L-Befehl bewegt den Cursor an den Anfang der aktuellen Zeile, d. Leerzeichen) der aktuellen Zeile. $ (zum Ende der Zeile bewegen) Dieser Befehl bewegt den Cursor an das Ende der aktuellen Zeile und stoppt beim letzten Zeichen. Wenn Sie vor dem $-Befehl eine Zahl n hinzufügen, bewegt sich der Cursor n-1 Zeilen nach unten und erreicht das Ende der Zeile. [Zeilennummer] G (zur angegebenen Zeile wechseln) Dieser Befehl bewegt den Cursor an den Anfang der Zeile, die durch die angegebene Zeilennummer angegeben wird. Diese Art der Bewegung wird als absolute Positionierungsbewegung bezeichnet. Der Cursor bewegt sich an den Anfang von Zeile 6. Wenn die Zeilennummer weggelassen wird, bewegt sich der Cursor an den Anfang der letzten Zeile der Datei, d. h. unabhängig davon, wie viele Bildschirme die Datei hat, springt er zur letzten Zeile Verwandte Empfehlungen: „Linux Video Anleitung"
Das obige ist der detaillierte Inhalt vonOrganisieren und teilen Sie detaillierte Erklärungen zu vi-Befehlen unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!