Der Unix-Standard-Editor vi
ist nach der Installation des Basissystems auf jedem
Debian GNU/Linux-System verfügbar. vi
wird schon seit vielen Jahren auf Unix-Systemen
eingesetzt. Seine für Anfänger kryptische Bedienung rührt aus der langen Geschichte
dieses Editors her. In der Urzeit der Computertechnik standen keine aufwändigen
grafischen Arbeitsplätze zur Verfügung. Textdrucker mit Tastatur oder - etwas moderner -
Text-Terminals (VT100, ein Modell der Firma DEC, ist noch heute ein Begriff), die seriell an
den Rechner angeschlossen wurden, waren der Stand der Technik.
Debian verwendet bereits von Haus aus eine verbesserte Version des „vi“, den „nvi“.
In jedem Fall ist es sinnvoll, ein paar wenige Grundlagen über den vi
zu erfahren. Dieser Editor ist einfach immer
verfügbar, auch auf einem minimalem System. Unabhängig von Ihren Vorlieben (oder denen
Ihrer Freunde) sind Grundkenntnisse in der Bedienung des vi
für jeden Benutzer eines Unix-Systems notwendig,
spätestens wenn der Bereich der Systemadministration gestreift wird.
Wenn Sie sich etwas in den vi
eingearbeitet haben, werfen Sie mal einen Blick auf Vim
, „vi improved“, der eine erweiterte
Version des vi
ist.
Beim vi
wird zwischen einem Kommando- und einem Eingabemodus
unterschieden. Durch Drücken der Taste i für „Input“
kommen Sie in den Eingabemodus. Ein Druck auf die Taste ESC beendet den
Eingabemodus, und man befindet sich wieder im Kommandomodus. Zum Eingabemodus gibt es
nicht viel zu sagen, es können damit weitere Zeichen in die Datei eingegeben werden.
Interessanter ist der Kommandomodus des vi
. Mit einzelnen Tasten können Sie im Text navigieren
oder auch Zeichen bzw. Zeilen löschen. Laden Sie einfach eine Datei, beispielsweise mit
den Kommandos: cp /etc/hosts .
(legt eine Kopie der Datei im aktuellen
Verzeichnis ab) und vi ./hosts
(startet vi
und lädt die Datei). Nach dem Start des vi befinden
Sie sich im Kommandomodus. Sie können nun ein einzelnes Zeichen löschen, indem Sie die
Taste x drücken. Ein solcher Befehl kann mit der Taste
u rückgängig gemacht werden.
Um den Cursor im Text zu bewegen, können Sie die Pfeiltasten benutzen. Sollte dies aufgrund fehlerhafter Einstellungen (zum Beispiel über eine telnet-Verbindung) einmal nicht funktionieren, können Sie in jedem Fall mit den Tasten h (bewegt den Cursor ein Zeichen nach links), j (springt zur nächsten Zeile), k (springt eine Zeile nach oben) und l (bewegt den Cursor ein Zeichen nach rechts) navigieren. Seitenweises Blättern kann mit den Tasten STRG+U (Up/Aufwärts) und STRG+D (Down/Abwärts) erreicht werden.
Viele der vi-
Kommandos lassen sich auch
„vervielfältigen“. Beispielsweise löscht 9x neun Zeichen
ab der aktuellen Position. Dies funktioniert mit den meisten anderen Kommandos ebenso.
Wenn Sie die Änderungen in einer Datei speichern wollen, können Sie dies mit
:w tun. Dateien unter einem anderen Namen speichern Sie mit
:w neu.txt. Sie können den vi
beenden, indem Sie :q eingeben. Auch
hier sind Kombinationen möglich, so können Sie eine Datei mit :wq
speichern und den Editor verlassen.
Häufig möchte man Zeilen kopieren: Hierzu dient der Befehl yy. Dieser speichert die aktuelle Zeile in einem Puffer. Die gespeicherten Daten lassen sich mit p wieder an einer anderen Stelle einfügen. Analog dazu lassen sich mit 7yy sieben Zeilen kopieren und so weiter.
So viel zu den Grundzügen des Editors vi
. Mit diesen wenigen Kommandos sind Sie in der Lage,
Anpassungen an den Konfigurationsdateien Ihres Debian GNU/Linux-Systems vorzunehmen.
Wenn Sie sich eine Zeit lang mit diesem Editor beschäftigt haben, können Sie folgende Übersicht verwenden, um Ihr vi-Know-how zu vertiefen.
PDF-Dateien bearbeiten mit Vim | |
---|---|
Das Paket |
Vim Tipps | |
---|---|
Im „Vim Tips Wiki“ finden sich seh viele und nützliche Tipps zum Editor Vim: vim.wikia.com/wiki/Vim_Tips_Wiki. |
Bereits beim Programmstart können einige Optionen angegeben werden. Diese sind unter anderem:
vi name
- Startet den Editor und lädt die
Datei name
.
vi name1 name2 name3
- Startet den Editor
und lädt die Dateien name1
, name2
und name3
.
vi -R name
- Startet den Editor und lädt
die Datei name
im Nur-lesen-Modus.
vi -r name
- Startet den Editor und
restauriert die Datei name
nach einem Absturz.
Wenn der Editor gestartet ist, können einige Einstellungen verändert werden.
Sollen diese Änderungen dauerhaft gespeichert werden, so können diese in die Datei
~/.vimrc
eingetragen werden.
:set
- Zeigt die aktuellen
Benutzereinstellungen.
:set all
- Zeigt alle
Einstellungen.
:set <option>
- Aktiviert
eine Option. Zum Beispiel aktiviert set number
die Anzeige der
Zeilennummern.
:set no<option>
-
Deaktiviert eine Option. Zum Beispiel deaktiviert set nonumber
die Anzeige der
Zeilennummern.
:set option?
- Zeigt die möglichen Werte
dieser Option.
ZZ
- Speichert die Datei und beendet das
Programm.
:wq
- Speichert die Datei und beendet das
Programm.
:w
- Speichert die Datei.
:w!
- Speichert die Datei, auch wenn die
Zugriffsrechte auf Nur-lesen gesetzt sind.
:w name
- Speichert die Datei unter dem
Namen name
.
:q
- Beendet das Programm.
:q!
- Beendet das Programm, Änderungen
werden verworfen.
:e name
- Lädt die Datei name
.
:e! name
- Lädt die Datei name
erneut und verwirft alle bisherigen
Änderungen.
:e + name
- Lädt die Datei name
und springt ans Ende der
Datei.
:e +<n> name
- Lädt die
Datei name
und springt in die Zeile < n
>.
:n
- Geht zur nächsten der geladenen
Dateien.
:args
- Zeigt die aktuelle Liste der
Dateien.
:rew
- Springt zur ersten Datei in der
Dateiliste.
:f
- zeigt den Namen der aktuellen Datei
und die aktuelle Zeilennummer an.
:q
- Beendet das Programm.
Pfeiltasten
- Mit den Pfeiltasten kann
der Cursor wie in anderen Anwendungen bewegt werden.
STRG+d> - Springt eine halbe Seite nach unten.
STRG+u> - Springt eine halbe Seite nach oben.
STRG+f - Springt eine Seite nach unten.
STRG+b - Springt eine Seite nach oben.
:0
- Springt zum Anfang der Datei.
:<n>
- Springt zur Zeile
< n
> der Datei.
:$
- Springt zum Ende der Datei.
0
- Springt zum Anfang der Zeile.
^
- Springt zum ersten Zeichen, das kein
Leerzeichen ist.
$
- Springt zum Ende der Zeile.
RETURN - Springt zum Anfang der nächsten Zeile.
%
- Zeigt die zugehörige Klammer.
G
- Springt zur letzten Zeile.
H
- Springt zur ersten Zeile im aktuellen
Fenster.
L
- Springt zur letzten Zeile im
aktuellen Fenster.
M
- Springt in die Mitte des aktuellen
Fensters.
-
- Springt zum ersten Nicht-Leerzeichen
der vorhergehenden Zeile.
+
- Springt zum ersten Nicht-Leerzeichen
der nächsten Zeile.
j
- Springt zur nächsten Zeile in der
gleichen Spalte.
k
- Springt zur vorhergehenden Zeile in
der gleichen Spalte.
h
- Springt ein Zeichen nach
links.
l
- Springt ein Zeichen nach
rechts.
w
- Springt ein Wort vorwärts.
b
- Springt ein Wort rückwärts.
e
- Springt zum Ende des Wortes.
)
- Springt zum nächsten Satz.
(
- Springt zum vorhergehenden
Satz.
}
- Springt zum nächsten Absatz.
{
- Springt zum vorhergehenden
Absatz.
x
- Löscht das Zeichen unter dem
Cursor.
X
- Löscht das Zeichen vor dem
Cursor.
D
- Löscht alles bis zum Ende der
Zeile.
d^
- Löscht alles bis zum Anfang der
Zeile.
dd
- Löscht die gesamte Zeile.
<n>dd
- Löscht <n>
Zeilen.
d<n>w
- Löscht <n>
Wörter ab der
Cursorposition.
i
- Aktiviert den Eingabemodus vor dem
Cursor.
I
- Aktiviert den Eingabemodus vor dem
ersten Nicht-Leerzeichen in der aktuellen Zeile.
a
- Aktiviert den Eingabemodus nach dem
Cursor.
A
- Aktiviert den Eingabemodus nach dem
Ende der Zeile.
o
- Beginnt eine neue Zeile nach der
aktuellen Zeile und aktiviert den Eingabemodus.
O
- Beginnt eine neue Zeile über der
aktuellen Zeile und aktiviert den Eingabemodus.
r<n>
- Ersetzt das Zeichen
unter dem Cursor durch das Zeichen < n
>, der Eingabemodus wird nicht
aktiviert.
R
- Aktiviert den Eingabemodus, Zeichen
werden überschrieben.
C
- Ändert den Text bis zum
Zeilenende.
D
- Löscht den Text bis zum
Zeilenende.
s
- Ersetzt Zeichen.
S
- Ersetzt Zeilen.
J
- Entfernt den Zeilenumbruch am Ende
einer Zeile, fügt also die aktuelle und die folgende Zeile
zusammen.
yy
- Kopiert die aktuelle Zeile.
<n>yy
- kopiert <n>
Zeilen.
p
- Fügt die kopierten Zeilen nach der
aktuellen Zeile ein.
P
- Fügt die kopierten Zeilen vor der
aktuellen Zeile ein.
Auch gelöschte Zeilen können mit den aufgeführten Kommandos eingefügt werden.
/text
- Sucht vorwärts nach text
.
?text
- Sucht rückwärts nach text
.
n
- Sucht noch einmal in der gleichen
Richtung.
N
- Sucht noch einmal in der umgekehrten
Richtung.
[ addr ] s/from/to/ [ g ]
- Ersetzt
einmalig from
durch to
. Mit addr
kann ein Bereich angegeben werden,
in dem die Aktion durchgeführt werden soll. Die Zeilennummern sind durch
ein Komma zu trennen. g
führt die Aktion an jeder gefundenen
Stelle durch. Beispiel: :2,10s/a/b/g
ersetzt in den Zeilen von 2
bis 10 alle Buchstaben a durch b.
u
- Undo, widerruft die letzte
Änderung.
U
- Stellt die aktuelle Zeile wieder
her.
~
- Ändert Groß-/Kleinschreibung.
.
- Wiederholt das letzte
Kommando.
© 1999 - 2024 | Das Debian GNU/Linux Anwenderhandbuch von Frank Ronneburg steht unter einer Creative Commons Namensnennung-Nicht Kommerziell-Keine Bearbeitung 3.0 Deutschland Lizenz.