GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So bearbeiten Sie mehrere Dateien mit dem Vim-Editor

Manchmal befinden Sie sich in einer Situation, in der Sie Änderungen an mehreren Dateien vornehmen möchten. Oder Sie möchten den Inhalt einer Datei in eine andere kopieren. Wenn Sie sich im GUI-Modus befinden, können Sie die Dateien einfach in einem beliebigen grafischen Texteditor wie gedit öffnen und den Inhalt mit STRG+C und STRG+V kopieren/einfügen. Im CLI-Modus können Sie solche Editoren nicht verwenden. Keine Bange! Wo es einen Vim-Editor gibt, gibt es einen Weg! In diesem Tutorial lernen wir, mehrere Dateien gleichzeitig mit dem Vim-Editor zu bearbeiten. Vertrauen Sie mir, das ist eine sehr interessante Vim-Funktion!

Installieren Sie Vim unter Linux

Der Vim-Editor ist in den offiziellen Repositories der meisten Linux-Distributionen verfügbar. Sie können es also mit dem Standardpaketmanager installieren.

Zum Beispiel auf Arch Linux und seine Varianten können Sie mit folgendem Befehl installieren:

$ sudo pacman -S vim

Auf Debian , Ubuntu :

$ sudo apt-get install vim

Auf RHEL , CentOS :

$ sudo yum install vim

Auf Fedora :

$ sudo dnf install vim

Auf openSUSE :

$ sudo zypper install vim

Bearbeiten Sie mehrere Dateien gleichzeitig mit dem Vim-Editor in Linux

Es könnte viele Möglichkeiten geben, Multiples mit dem Vim-Editor zu bearbeiten. Ich kenne zwei Methoden.

Methode 1

Ich habe zwei Dateien, nämlich file1.txt und file2.txt , mit ein paar zufälligen Wörtern. Lassen Sie uns einen Blick darauf werfen.

$ cat file1.txt 
ostechnix
open source
technology
linux
unix
$ cat file2.txt 
line1
line2
line3
line4
line5

Lassen Sie uns nun diese beiden Dateien gleichzeitig mit dem Vim-Editor bearbeiten. Führen Sie dazu Folgendes aus:

$ vim file1.txt file2.txt

Vim zeigt den Inhalt der Dateien in einer Reihenfolge an. Der Inhalt der ersten Datei wird zuerst angezeigt, dann die zweite Datei und so weiter.

Bearbeiten Sie mehrere Dateien mit dem Vim-Editor

Zwischen Dateien wechseln

Geben Sie Folgendes ein, um zur nächsten Datei zu wechseln:

:n

Zwischen Dateien im Vim-Editor wechseln

Um zur vorherigen Datei zurückzukehren, geben Sie Folgendes ein:

:N

Hier ist N ein Großbuchstabe (geben Sie SHIFT+n ein).

Beginnen Sie mit der Bearbeitung der Dateien wie mit dem Vim-Editor. Drücken Sie 'i', um in den interaktiven Modus zu wechseln und den Inhalt nach Ihren Wünschen zu ändern. Wenn Sie fertig sind, drücken Sie ESC, um zum normalen Modus zurückzukehren.

Vim erlaubt Ihnen nicht, zur nächsten Datei zu wechseln, wenn es ungespeicherte Änderungen gibt. Geben Sie Folgendes ein, um die Änderungen in der aktuellen Datei zu speichern:

ZZ

Bitte beachten Sie, dass es sich um doppelte Großbuchstaben ZZ (SHIFT+zz) handelt.

Um die Änderungen zu verwerfen und zur vorherigen Datei zu wechseln, geben Sie Folgendes ein:

:N!

Um die aktuell bearbeiteten Dateien anzuzeigen, geben Sie Folgendes ein:

:buffers

Dateien im Puffer in VIm anzeigen

Unten sehen Sie die Liste der geladenen Dateien.

Liste der Dateien im Puffer in Vim

Um zur nächsten Datei zu wechseln, geben Sie :buffer ein gefolgt von der Puffernummer. Um beispielsweise zur ersten Datei zu wechseln, geben Sie Folgendes ein:

:buffer 1

Oder tun Sie einfach:

:b 1

Zur nächsten Datei in Vim wechseln

Denken Sie einfach an diese Befehle, um einfach zwischen Puffern zu wechseln:

:bf            # Go to first file.
:bl            # Go to last file
:bn            # Go to next file.
:bp            # Go to previous file.
:b number  # Go to n'th file (E.g :b 2)
:bw            # Close current file.

Öffnen zusätzlicher Dateien zum Bearbeiten

Wir bearbeiten derzeit zwei Dateien, nämlich file1.txt, file2.txt. Möglicherweise möchten Sie eine andere Datei mit dem Namen file3.txt öffnen zum Bearbeiten. Was wirst du tun? Es ist einfach! Geben Sie einfach :e ein gefolgt vom Dateinamen wie unten.

:e file3.txt

Öffnen Sie zusätzliche Dateien zur Bearbeitung in Vim

Jetzt können Sie file3.txt bearbeiten.

Geben Sie Folgendes ein, um anzuzeigen, wie viele Dateien derzeit bearbeitet werden:

:buffers

Alle Dateien in Puffern in Vim anzeigen

Bitte beachten Sie, dass Sie mit :e nicht zwischen geöffneten Dateien wechseln können entweder mit :n oder :N . Um zu einer anderen Datei zu wechseln, geben Sie :buffer ein gefolgt von der Dateipuffernummer.

Kopieren des Inhalts einer Datei in eine andere

Sie wissen, wie Sie mehrere Dateien gleichzeitig öffnen und bearbeiten. Manchmal möchten Sie vielleicht den Inhalt einer Datei in eine andere kopieren. Es ist auch möglich. Wechseln Sie zu einer Datei Ihrer Wahl. Angenommen, Sie möchten den Inhalt von Datei1.txt in Datei2.txt kopieren.

Wechseln Sie dazu zunächst in file1.txt:

:buffer 1

Platzieren Sie den Bewegungscursor vor einer Zeile, die kopiert werden soll, und geben Sie yy ein die Linie zu reißen (kopieren). Wechseln Sie dann zu file2.txt:

:buffer 2

Platzieren Sie den Mauszeiger an der Stelle, an der Sie die kopierten Zeilen aus file1.txt einfügen möchten, und geben Sie p ein . Sie möchten beispielsweise die kopierte Zeile zwischen Zeile2 und Zeile3 einfügen. Setzen Sie dazu den Mauszeiger vor line und geben Sie p ein .

Beispielausgabe:

line1
line2
ostechnix
line3
line4
line5

Kopieren des Inhalts einer Datei in eine andere Datei mit Vim

Geben Sie Folgendes ein, um die in der aktuellen Datei vorgenommenen Änderungen zu speichern:

ZZ

Beachten Sie erneut, dass dies ein doppelter Großbuchstabe ZZ ist (SHIFT+z).

Um die Änderungen in allen Dateien zu speichern und den vim-Editor zu beenden. Typ:

:wq

Ebenso können Sie jede Zeile aus jeder Datei in andere Dateien kopieren.

Komplette Dateiinhalte in eine andere kopieren

Wir wissen, wie man eine einzelne Zeile kopiert. Was ist mit dem gesamten Dateiinhalt? Das ist auch möglich. Nehmen wir an, Sie möchten den gesamten Inhalt von Datei1.txt in Datei2.txt kopieren.

Öffnen Sie dazu zuerst die Datei2.txt:

$ vim file2.txt

Wenn die Dateien bereits geladen sind, können Sie zu file2.txt wechseln, indem Sie Folgendes eingeben:

:buffer 2

Bewegen Sie den Cursor an die Stelle, an der Sie den Inhalt von file1.txt kopieren möchten. Ich möchte den Inhalt von file1.txt nach line5 in file2.txt kopieren, also habe ich den Cursor auf Zeile 5 bewegt. Geben Sie dann den folgenden Befehl ein und drücken Sie die EINGABETASTE:

:r file1.txt

Kopieren des gesamten Inhalts einer Datei in eine andere Datei

Hier, r bedeutet lesen .

Jetzt sehen Sie, dass der Inhalt von file1.txt nach line5 in file2.txt eingefügt wird.

line1
line2
line3
line4
line5
ostechnix
open source
technology
linux
unix

Kopieren des gesamten Dateiinhalts in eine andere Datei mit Vim

Geben Sie Folgendes ein, um die Änderungen in der aktuellen Datei zu speichern:

ZZ

Geben Sie Folgendes ein, um alle Änderungen in allen geladenen Dateien zu speichern und den vim-Editor zu beenden:

:wq

Methode 2

Die andere Methode zum gleichzeitigen Öffnen mehrerer Dateien ist die Verwendung von -o oder -O Flaggen.

Um mehrere Dateien in horizontalen Fenstern zu öffnen, führen Sie Folgendes aus:

$ vim -o file1.txt file2.txt

Öffnen Sie mehrere Dateien gleichzeitig in Vim

Um zwischen den Fenstern zu wechseln, drücken Sie CTRL-w w (D. h. drücken Sie STRG+w und drücken Sie erneut w ). Oder verwenden Sie die folgenden Tastenkombinationen, um zwischen den Fenstern zu wechseln.

  • STRG-wk - oberes Fenster
  • STRG-w j - unteres Fenster

Um mehrere Dateien in vertikalen Fenstern zu öffnen, führen Sie Folgendes aus:

$ vim -O file1.txt file2.txt file3.txt

Öffnen Sie mehrere Dateien in vertikalen Fenstern in Vim

Um zwischen den Fenstern zu wechseln, drücken Sie CTRL-w w (D. h. drücken Sie STRG+w und drücken Sie erneut w ). Oder verwenden Sie die folgenden Tastenkombinationen, um zwischen den Fenstern zu wechseln.

  • STRG-w l - linkes Fenster
  • STRG-w - rechtes Fenster

Alles andere ist wie in Methode 1 beschrieben.

Um beispielsweise aktuell geladene Dateien aufzulisten, führen Sie Folgendes aus:

:buffers

So wechseln Sie zwischen Dateien:

:buffer 1

Um eine weitere Datei zu öffnen, geben Sie ein:

:e file3.txt

So kopieren Sie den gesamten Inhalt einer Datei in eine andere:

:r file1.txt

Der einzige Unterschied zu Methode 2 besteht darin, dass Sie die Änderungen in der aktuellen Datei mit ZZ gespeichert haben , wird die Datei automatisch geschlossen. Außerdem müssen Sie die Dateien einzeln schließen, indem Sie :wq eingeben . Aber hätten Sie die Methode 1 befolgt, als Sie :wq eingegeben haben Alle Änderungen werden in allen Dateien gespeichert und alle Dateien werden sofort geschlossen.

Weitere Einzelheiten finden Sie in den Manpages.

$ man vim

Empfohlene Lektüre:

  • So kommentieren Sie mehrere Zeilen gleichzeitig im Vim-Editor aus
  • Verwalten von Vim-Plugins mit Vundle unter Linux
  • So verwenden Sie die Rechtschreibprüfungsfunktion im Vim-Texteditor

Sie wissen jetzt, wie Sie mehrere Dateien mit dem vim-Editor unter Linux bearbeiten. Wie Sie sehen können, ist das Bearbeiten mehrerer Dateien nicht so schwierig. Der Vim-Editor hat leistungsfähigere Funktionen.

Wir werden in den kommenden Tagen weitere Vim-Tipps schreiben. Bleiben Sie dran!


Linux
  1. So bearbeiten Sie mehrere Dateien und wechseln zwischen diesen in VIM mithilfe von Puffern

  2. So komprimieren Sie mehrere Dateien unter Linux

  3. Vim:Wie öffnet man mehrere Dateien in verschiedenen Registerkarten?

  4. So benennen Sie mehrere Dateien zusammen in Linux mit 3 Methoden um

  5. So kopieren Sie mehrere Dateien gleichzeitig mit scp

So schützen Sie Dateien im Vim-Editor mit einem Passwort

So bearbeiten Sie Konfigurationsdateien in Ubuntu

Wie beendet man Vim? Mehrere Möglichkeiten zum Beenden des Vim-Editors

So kommentieren Sie mehrere Zeilen gleichzeitig im vim-Editor mit 3 Methoden

So installieren Sie Vim auf Ubuntu

Wie man Dateien mit dem Vim-Editor in Ubuntu mit einem Passwort schützt