Vi Texteditor!
Textbearbeitung, der richtige Weg.
Einführung
Meistern Sie den Vi-Texteditor und lernen Sie, wie Sie komplexe Änderungen an Ihren Dateien mit weniger Zeit und Aufwand vornehmen können.
Im letzten Abschnitt haben wir einige Dateien erstellt, die jedoch leer waren. Ein bisschen langweilig, aber wir müssen irgendwo anfangen. In diesem Abschnitt sehen wir uns ein Tool an, mit dem Sie Inhalte in Dateien einfügen und auch bearbeiten können. Vi ist ein Texteditor, der sich höchstwahrscheinlich stark von jedem Editor unterscheidet, den Sie zuvor verwendet haben. Es wird eine Weile dauern, um Ihren Kopf herumzubekommen, aber sobald Sie dies tun, werden Sie feststellen, dass es tatsächlich ziemlich mächtig ist. Es ist ein bisschen wie Touch-Typisierung, anfangs ist das Lernen umständlich und Sie fragen sich, warum Sie sich die Mühe machen, aber sobald Sie den Dreh raus haben, werden Sie nicht mehr zurückgehen wollen.
Selbst wenn Sie Vi nicht ständig verwenden, werden Sie feststellen, dass die Arbeitsmuster, die Sie beim Erlernen des Editors entwickeln, problemlos und mit großer Wirkung auf andere Programme übertragen werden können.
Dieser Abschnitt und die nächsten Abschnitte bilden tatsächlich die Grundlage für die letzten Abschnitte, in denen wir sie alle zusammenstellen und anfangen werden, ein paar wirklich funky Sachen zu machen. Ich habe mich entschieden, Vi zuerst zu betrachten, damit Ihr Verstand ein wenig Zeit hat, es zu verarbeiten und zu verstehen, um es später vorzubereiten, wenn wir es brauchen.
Vi ist ein sehr mächtiges Werkzeug. In diesem Abschnitt möchte ich nicht alles behandeln, was Sie tun können, sondern Sie mit den Grundlagen vertraut machen. Am Ende des Abschnitts werde ich einige Links zu Ressourcen bereitstellen, in denen Sie Vi weiter lernen können. Ich empfehle Ihnen dringend, sich einige davon anzusehen.
Ein Befehlszeileneditor
Vi ist ein Befehlszeilentexteditor. Wie Sie jetzt wissen, ist die Befehlszeile eine ganz andere Umgebung als Ihre GUI. Es ist ein einzelnes Fenster mit nur Texteingabe und -ausgabe. Vi wurde entwickelt, um innerhalb dieser Grenzen zu arbeiten, und viele würden argumentieren, ist eigentlich ziemlich mächtig als Ergebnis. Vi ist als einfacher Texteditor (ähnlich wie Notepad unter Windows oder Textedit auf dem Mac) im Gegensatz zu einer Textverarbeitungssuite wie Word oder Pages gedacht. Es hat jedoch viel mehr Leistung im Vergleich zu Notepad oder Textedit.
Als Ergebnis müssen Sie die Maus fallen lassen. Alles in Vi erfolgt über die Tastatur.
Es gibt zwei Modi in Vi. Einfügen (oder Eingabe) Modus und Bearbeitungsmodus. Im Eingabemodus können Sie Inhalte in die Datei eingeben oder eingeben. Im Bearbeitungsmodus können Sie sich in der Datei bewegen, Aktionen wie Löschen, Kopieren, Suchen und Ersetzen, Speichern usw. ausführen. Ein häufiger Fehler besteht darin, Befehle einzugeben, ohne zuerst in den Bearbeitungsmodus zurückzukehren, oder Eingaben einzugeben, ohne zuerst in den Einfügemodus zu wechseln. Wenn Sie eines dieser Dinge tun, ist es im Allgemeinen einfach, sich zu erholen, also machen Sie sich keine Sorgen.
Wenn wir vi ausführen, geben wir es normalerweise mit einem einzigen Befehlszeilenargument aus, das die Datei ist, die Sie bearbeiten möchten.
vi <file>
Wenn Sie vergessen, eine Datei anzugeben, gibt es eine Möglichkeit, eine Datei in vi zu öffnen, aber es ist am einfachsten, vi einfach zu beenden und erneut zu versuchen. Denken Sie auch daran, dass, wenn wir die Datei angeben, es entweder mit einem absoluten oder relativen Pfad sein kann.
Lassen Sie uns eintauchen und loslegen. Es wird mir schwer fallen, viel davon zu demonstrieren, also werde ich stattdessen auflisten, was Sie eingeben sollen, und Sie müssen es ausprobieren und sehen, was passiert.
Lassen Sie uns zunächst in das Verzeichnis wechseln, das Sie im Abschnitt über Dateimanipulation erstellt haben. Wir werden ein paar Dateien erstellen und dies wird sie aus dem Weg Ihrer normalen Sachen halten.
Jetzt bearbeiten wir unsere erste Datei.
- vi firstfile
Wenn Sie diesen Befehl ausführen, wird die Datei geöffnet. Wenn die Datei nicht existiert, wird sie für Sie erstellt und dann geöffnet. (sie müssen keine Dateien berühren, bevor Sie sie bearbeiten) Sobald Sie vi eingeben, sieht es ungefähr so aus (je nachdem, auf welchem System Sie sich befinden, kann es jedoch etwas anders aussehen).
- ~
- ~
- ~
- ~
- ~
- „firstfile“
Sie beginnen immer im Bearbeitungsmodus, also wechseln wir zuerst in den Einfügemodus, indem wir i drücken.
- ~
- ~
- ~
- ~
- ~
- ~
- — INSERT —
Geben Sie nun ein paar Textzeilen ein und drücken Sie Esc, um in den Bearbeitungsmodus zurückzukehren.
Speichern und Beenden
Es gibt einige Möglichkeiten, dies zu tun. Sie alle machen im Wesentlichen das Gleiche, also wählen Sie den Weg, den Sie bevorzugen. Stellen Sie bei all diesen Vorgängen sicher, dass Sie sich zuerst im Bearbeitungsmodus befinden.
Wenn Sie sich nicht sicher sind, ob Sie sich im Bearbeitungsmodus befinden oder nicht, können Sie in die untere linke Ecke schauen. Solange es nicht sagt, dass es dir gut geht. Alternativ können Sie einfach Esc drücken, um sicherzugehen. Wenn Sie sich bereits im Bearbeitungsmodus befinden, bewirkt das Drücken von Esc nichts, sodass Sie keinen Schaden anrichten.
Die meisten Befehle in vi werden ausgeführt, sobald Sie eine Tastenfolge drücken. Für jeden Befehl, der mit einem Doppelpunkt ( : ) beginnt, müssen Sie <enter> drücken, um den Befehl abzuschließen.
Speichern und beenden Sie die Datei, die Sie gerade geöffnet haben
Andere Möglichkeiten zum Anzeigen von Dateien
vi ermöglicht es uns, Dateien zu bearbeiten. Wenn wir wollten, könnten wir damit auch Dateien anzeigen, aber es gibt zwei andere Befehle, die für diesen Zweck etwas bequemer sind. Der erste ist cat, der eigentlich für concatenate steht. Sein Hauptzweck ist es, Dateien miteinander zu verbinden, aber in seiner grundlegendsten Form ist es nützlich, nur Dateien anzuzeigen.
cat <file>
Wenn Sie den Befehl cat ausführen und ihm ein einziges Befehlszeilenargument geben, das die gerade erstellte Datei ist, wird der Inhalt auf dem Bildschirm angezeigt, gefolgt von der Eingabeaufforderung.
Wenn Sie cat versehentlich ausführen, ohne ihm ein Befehlszeilenargument zu geben, werden Sie feststellen, dass sich der Cursor in die nächste Zeile bewegt und dann nichts passiert. Da wir keine Datei angegeben haben, liest cat stattdessen aus etwas namens STDIN (über das wir im Abschnitt ‚Piping und Umleitung‘ erfahren werden, der standardmäßig die Tastatur verwendet. Wenn Sie etwas eingeben, drücken Sie <Geben Sie> ein. Um hier rauszukommen, können Sie Strg> + c drücken, was das universelle Signal für Cancel in Linux ist.
In der Tat, wenn Sie in Schwierigkeiten geraten, können Sie im Allgemeinen drücken Strg> + c um sich aus der Patsche zu befreien.
- cat firstfile
- Hier sehen Sie
- welchen Inhalt Sie
- in Ihre Datei eingegeben haben
Dieser Befehl ist nett, wenn wir eine kleine Datei anzeigen müssen, aber wenn die Datei groß ist, wird der größte Teil des Inhalts über den Bildschirm fliegen und wir sehen nur die letzte Seite des Inhalts. Für größere Dateien gibt es einen besser geeigneten Befehl, der weniger ist.
less file>
Mit less können Sie sich mit den Pfeiltasten innerhalb einer Datei nach oben und unten bewegen. Sie können eine ganze Seite mit der Leertaste vorwärts gehen oder eine Seite zurück, indem Sie b drücken.
Schauen Sie sich die Datei an, die Sie gerade mit diesen beiden Befehlen erstellt haben.
Navigieren in einer Datei in Vi
Gehen wir nun zurück in die Datei, die wir gerade erstellt haben, und geben weitere Inhalte ein. Im Einfügemodus können Sie den Cursor mit den Pfeiltasten bewegen. Geben Sie zwei weitere Absätze des Inhalts ein und drücken Sie Esc, um in den Bearbeitungsmodus zurückzukehren.
Im Folgenden finden Sie einige der vielen Befehle, die Sie eingeben können, um sich in der Datei zu bewegen. Spielen Sie mit ihnen und sehen Sie, wie sie funktionieren.
- Pfeiltasten – Bewegen Sie den Cursor um
- j, k, h, l – Bewegen Sie den Cursor nach unten, oben, links und rechts (ähnlich den Pfeiltasten)
- ^ (caret) – Bewegen Sie den Cursor an den Anfang der aktuellen Zeile
- $ – Bewegen Sie den Cursor an das Ende der aktuellen Zeile
- nG – Bewegen Sie sich in die n-te Zeile (z. B. 5G bewegt sich in die 5 /li>
- w – gehe zum Anfang des nächsten Wortes
- nw – bewege dich vorwärts n Wort (zB 2w bewegt zwei Wörter vorwärts)
- b – bewege dich zum Anfang des vorherigen Wortes
- nb – bewege dich zurück n Wort
- { – bewege dich paragraph
- } – einen Absatz vorwärts bewegen
Wenn Sie Folgendes eingeben:set nu im Bearbeitungsmodus innerhalb von vi werden Zeilennummern aktiviert. Ich finde, dass das Einschalten von Zeilennummern die Arbeit mit Dateien viel einfacher macht.
Inhalt löschen
Wir haben gerade gesehen, dass uns einige Optionen zur Verfügung stehen, wenn wir uns in vi bewegen möchten. Einige von ihnen erlauben es uns auch, ihnen eine Nummer vorauszugehen, um uns so oft zu bewegen. Tatsächlich können wir mit mehreren Löschbefehlen einen Bewegungsbefehl integrieren, um zu definieren, was gelöscht werden soll.
Im Folgenden finden Sie einige der vielen Möglichkeiten, wie wir Inhalte in vi löschen können. (Lesen Sie auch den Abschnitt unten zum Rückgängigmachen, damit Sie Ihre Löschungen rückgängig machen können.)
- x – lösche ein einzelnes Zeichen
- nx – lösche n Zeichen (z. B. 5x löscht fünf Zeichen)
- dd – lösche die aktuelle Zeile
- dn – d gefolgt von einem Bewegungsbefehl. Gehen Sie dahin, wo der Bewegungsbefehl Sie hingebracht hätte. (zB d5w bedeutet 5 Wörter löschen)
Rückgängig machen
Rückgängig machen von Änderungen in vi ist ziemlich einfach. Es ist der Charakter u.
- u – Machen Sie die letzte Aktion rückgängig (Sie können u drücken, um das Rückgängig zu machen)
- U (Hinweis: Großbuchstaben) – Machen Sie alle Änderungen an der aktuellen Zeile rückgängig
Weitermachen
Wir können jetzt Inhalte in eine Datei einfügen, uns in der Datei bewegen, Inhalte löschen und rückgängig machen, dann speichern und beenden. Dies berührt jedoch nur die Oberfläche dessen, was vi tun kann. Ich werde hier nicht auf alle Details eingehen (ich glaube, ich habe schon genug auf Sie geworfen), aber ich werde Ihnen ein paar Dinge geben, die Sie vielleicht untersuchen möchten, um Ihr Fachwissen in vi zu erweitern. Eine einfache Suche in der Suchmaschine Ihrer Wahl für vi hier einfügen> finden Sie viele Seiten mit nützlichen Informationen. Es gibt auch viele vi-Spickzettel, in denen alle Befehle aufgelistet sind, die Ihnen zur Verfügung stehen.
- Kopieren und einfügen
- Suchen und ersetzen
- Puffer
- Marker
- Bereiche
- Einstellungen
Viel Spaß und denken Sie daran, dabei zu bleiben. es wird anfangs schmerzhaft sein, aber mit etwas Übung wird es bald dein Freund.
Zusammenfassung
Aktivitäten
Lassen Sie uns mit einigen Inhalten spielen.
- Erstellen Sie zunächst eine Datei und fügen Sie Inhalte ein.
- Speichern Sie die Datei und zeigen Sie sie sowohl in cat als auch in less an
- Gehen Sie in vi zurück in die Datei und geben Sie weiteren Inhalt ein.
- Bewegen Sie den Inhalt mit mindestens 6 verschiedenen Bewegungsbefehlen.
- Spielen Sie mit mehreren Löschbefehlen herum, insbesondere mit denen, die einen Bewegungsbefehl enthalten. Denken Sie daran, dass Sie Ihre Änderungen rückgängig machen können, damit Sie nicht ständig neue Inhalte einfügen müssen.