Vim Dateimanagement von Remote Hosts mit netrw

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen

vi (bzw. vim) ist der Standard-Editor in vielen Unix- und Linux-Umgebungen. Vim beinhaltet standardmäßig das Buildin netrw. Dadurch kann man die Applikation als Dateimanager nutzen. Diese Funktionalität beschränkt sich aber nicht ausschließlich auf lokale Quellen, sondern kann auch für entfernte Hosts verwendet werden.

Dieser Artikel beschreibt beispielhaft, wie man auf entfernten Hosts mithilfe von Vim und netrw Datensätze öffnen und bearbeiten kann.

Dateizugriff

Im Folgenden wird der Verbindungsaufbau und die Einrichtung des Dateimanagers erläutert.

Öffnen der Dateien

In Vim können zwei Quellen gleichzeitig geöffnet werden. Dies kann mit einem einzigen Befehl in Vim erledigt werden:

vim -c  ":e scp://root@192.168.6.61//" -c ":vsp" -c ":e scp://root@192.168.6.62//"

Dabei ist zu beachten, dass bei einem Verbindungsaufbau die SSH Keys benötigt werden. Andernfalls wird bei jedem Ordnerwechsel ein Passwort abgefragt.

Befehlserklärung

Snippet Erläuterung
vim Setzt ein vim-Buildin ein
-c es folgt ein Kommando (command)
":e scp://root@192.168.6.61//" Gibt die IP des Host an, zu dem eine Verbindung aufgebaut werden soll
:e edit
scp: securecopy / gesicherter Dateitransfer
vsp Sorgt dafür, dass beide Hosts in einem Vertical Split Screen (VSP) dargestellt werden

Dateibearbeitung

Ist die Verbindung offen, können Dateien auf beiden Hosts bearbeitet und verglichen werden.

Im folgenden wird beschrieben, wie man die Dateien öffnet und für ein vergleichendes Bearbeiten vorbereitet.

Auswahl der Dateien

Nachdem die betreffende Datei gefunden wurde, kann diese mit der Tastenkombination mf markiert werden.

Mark file diff vim .png

anschließend diese mit dem Tastenkürzel md zum Vergleich temporär öffnen:

File Open for VIM Diff.png

Den gleichen Vorgang im anderen Fenster mit dem zweiten Host wiederholen. Die Datei ebenfalls mit mf markieren und mit md öffnen.

Navigation in Vim

Mit [Strg] + [W] oder [P] kann zwischen den Fenstern bzw. Hosts gewechselt werden.

Dateien vergleichen

Dateinhalte werden jetzt direkt verglichen und Unterschiede mit Highlighting zeilenweise farbig angezeigt. HostIPs werden zur Orientierung in der untersten Zeile angezeigt.

Vim diff splitwindow.png

Dateiänderungen speichern

Änderungen werden mit

:wa

direkt auf die jeweiligen Hosts zurückgeschrieben.

Weitere Informationen

  • vi (de.wikipedia.org)


Foto Wilfried Seifert.jpg

Autor: Wilfried Seifert

Wilfried Seifert, tätig in der Abteilung Systems Engineering bei Thomas-Krenn, ist in seinem Arbeitsbereich für die System-/Prototypenentwicklung sowie Softwaredeployment / Rollout zuständig. LPIC 3 zertifiziert, beschäftigt sich u.a. mit Aufbau / Programmierung Embedded Systemen.


Das könnte Sie auch interessieren

Linux Kernel Versionen 5.x
LMDE umask 002 setzen
SNMP Grundlagen