/
Editor vi

Editor vi

der Editor vi

Kurzreferenz - Befehle im Befehlsmodus

Cursorpositionierung

Befehl

Modus

h

Ein Zeichen nach links

l

Ein Zeichen nach rechts

k

Ein Zeichen nach oben

j

Ein Zeichen nach unten

Leertaste

Ein Zeichen nach rechts

+

Beginn der nächsten Zeile

Enter

Beginn der nächsten Zeile

-

Beginn der vorusgegangenen Zeile

^

Zeilenbeginn der aktuellen Zeile

$

Zeilenende in der aktuellen Zeile

w

Beginn des folgenden Wortes (word)

W

Beginn des folgenden Wortes (Leerzeichen als Wortgrenze)

b

Beginn des vorhergehenden Wortes (back)

B

Beginn des vorhergehenden Wortes (Leerzeichen als Wortgrenze)

E

Ende des Wortes

(

Anfang des vorherigen Satzes

)

Ende des aktuellen Satzes

Strg+b

Vorhergehende Bildschirmseite (backward)

Strg+f

Folgende Bildschirmseite (forward)

G

Beginn der letzzten Textzeile

zeilennummerG

Beginn einer bestimmten Zeile (Zeilennummer)

H

Beginn der Bildschirmseite

L

Ende der Bildschirmseite

z Enter

aktuelle Zeile nach oben auf den Bildschirm

Umschalten in den Eingabemodus

Befehl

Modus

a

Text nach der aktuellen Cursorposition einfügen (append)

A

Text am Zeilenende der aktuellen Cursorposition einfügen

i

Text vor der aktuellen Cursorposition einfügen

I

Text am Zeilenanfang der aktuellen Zeile einfügen

o

Unterhalb der aktuellen Zeile eine neue Zeile einfügen

O

Oberhalb der aktuellen Zeile eine neue Zeile einfügen

R

Den Überschreibmodus ab der aktuellen Cursorposition starten

r

Ein einzelnes Zeichen überschreiben und den Eingabemodus wieder verlassen

Löschen im vi

Befehl

Modus

x

Löschen des Zeichens unter dem Cursor

X

Löschen des Zeichens vor dem Cursor

dw

Löschen des Wortes ab der aktuellen Cursorposition einschließlich Leerzeichen

de

Löschen des Wortes ab der aktuellen Cursorposition ohne folgendes Leerzeichen

db

Löschen des Wortes ab der aktuellen Cursorposition rückwärts

ndd

Löschen von n Zeilen ab der aktuellen Cursorposition

d)

Löschen des Satzes ab der aktuellen Cursorposition bis zum Ende

d(

Löschen des Satzes ab der aktuellen Cursorposition bis zum Anfang

d$

Löschen ab der aktuellen Cursorposition bis zum Zeilenende

d^

Löschen ab der aktuellen Cursorposition bis zum Zeilenanfang

dL

Löschen ab der aktuellen Position bis zum unteren Bildschirmende

dnG

Löschen aller Zeilen ab der aktuellen Cursorposition bis zur angegebenen Zeilennummer n

Zeilen zusammenfügen

Befehl

Modus

J

verbindet die aktuelle mit der nächsten Zeile

Befehle rückgängigmachen

Befehl

Modus

u

Macht den zuletzt im Befehlsmodus abgesetzten Befehl rückgängig (alle während einer vi-Sitzung abgesetzten Befehle werden gespeichert und können somit defr Reihe nach rückgängig gemacht werden)

U

Macht alle Befehle, die zusammenhängend innerhalb der aktuellen Zeile abgesetzt urden, auf einmal rückgängig

Strg+r

Führt einen rückgängiggemachten Befehl erneut aus (praktisch, wenn zu viel rückgängiggemacht wurde)

Verschieben und Kopieren

Befehl

Modus

y

Aktuelles Zeichen in Puffer kopieren

yy oder Y

Aktuelle Zeile in den Puffer kopieren

yw

Aktuelles Wort, ab Cursorposition in en Puffer kopieren (inklusive Leerzeichen)

ye

Aktuelles Wort, ab Cursorposition in den Puffer kopieren (ohne Leerzeichen)

y^

Zeile ab Cursorposition bis Zeilenanfang in den Puffer kopieren

y$

Zeile ab Cursorposition bis Zeilenende in den Puffer kopieren

y(

Satz ab Cursorposition bis Satzanfang in den Puffer kopieren

y)

Satz ab Cursorposition bis Zeilenende in den Puffer kopieren

yL

Alles ab aktueller Zeile bis zum Bildschirmende in den Puffer kopieren

p

Einfügen des Pufferinhalts ab der aktuellen Position, gepufferte Zeilen und Bereiche werden in eine neue Zeile kopiert, gepufferte Zeichen, Wörter, Teile von Zeilen und Teile von Sätzen werden direkt ab der aktuellen Cursorposition eingefügt.

P

Einfügen des Pufferinhalts vor der aktuellen Position.. Auch hier gilt, dss komplette Zeichen und Bereiche in neue Zeilen oberhalb der aktuellen Zeile eingefügt werden, einzelne Zeichen, Wörter, etc. unmittelbar vor der aktuellen Cursorposition.

Suchen

Befehl

Modus

Esc + /Suchbegriff + Enter

Suchfunktion vorwärts einchalten

n

Suchfunktion vorwärts wiederholen lassen

N

Suchvorgng rückwärt wiederholen

Esc + ?Suchbegriff + Enter

Suchfunktion rückwärts einschalten

Kurzreferenz - Befehle im Kommandozeilenmodus

Allgemeine Befehle

Befehl

Modus

Nummer

Positioniert den Cursor an die Zeile mit der Nummer

x

Speichern falls Änderungen gemach wurden und vi beenden

wq

Speichern und vi beenden

w

Speichern und nicht beenden

w Datei

Speichern unter einem anderen Namen

von,bisw Datei

Speichern eines Bereichs in eine Datei. von,bis sind die Zeilen, die den zu speichernen Bereich eingrenzen

q

vi beenden ohne zu speichern

e Datei

Neue Datei in vi laden. Die alte Datei wird geschlossen, falls sie seit der letzten Änderung gepeichert wurde.

e!

Datei erneut laden, alle Änderungen verwerfen.

r Datei

Den Inhlt einer Datei unterhalb der aktuellen Cursorposition einfügen.

Befehl!

Erzwingen eines Befehls (z.B. w!, q!, e! etc.), ohne Rücksicht uf Verluste

!Shell-Kommando

Ein Shell-Kommando ausführen und Ergebnis am am Bilschirm anzeigen (z.B. !ls).

!!

Letztes Shell-Kommando wiederholen.

r!Shell-Kommando

Das Ergebnis eines Shell-Kommandos nach der aktuellen Zeile einfügen.

.!Shell-Kommando

Das Ergebnis eines Shell-Kommandos ab der aktuellen Zeile einfügen, aktuelle Zeile wird überschrieben.

set number

fügt die Zeilennummer vorne ein

Suchen und Ersetzen

Befehl

Modus

von

Start-Zeile, in der begonnen werden soll. Fehlt die Ausgabe, wird die aktuelle Position als Startseite verwendet.

,bis

End-Ziel, bis dahin sollen die Veränderungen durchgeführt werden. Fehlt diese Angabe wird nur in der aktuellen oder in der durch von angegebenen Zeile ersetzt.

s

Ist der Suche-/Ersetzebefehl selbst.

Suchen

Ist der Ausdruck nach em gesucht werden soll. Hier kann auch ein Suchmuster (regulärer Ausdruck) angegebene werden.

Ersetzen

Hier wird angegeben, wie das gefundene Suchmuster ersetzt werden soll. Achtung: wid nach einem regulären Ausdruck gesucht, wird alles ersetzt, was dem Ausdruck entspricht. Also Vorsicht bei der Formulierung.

g

Bedeutet, dass alle zutreffnden Ausdrücke in einer Zeile ersetzt werden, nicht nur der zuerst gefunden Ausdruck.

c

Bedeutet, dass vor dem Ersetzen nochmal nachgefragt wird.

:%s/\./,/g

hier wird ein punkt [.] durch ein Komma [,] ersetzt

:%s/green/blue/g

hierbei wird "green" durch "blue" ersetzt