Editor vi

Spuštění editoru
vi	start editoru
vi filename	start editoru a otevření souboru filename
vi -r filename	obnoví soubor po event. výpadku systému
vi –r filename	zobrazí seznam systémem uložených souborů (r = recovery)
Ukončení editoru
:q	ukončení editoru (q = quit)
:q!	ukončení bez uložení změn
:x nebo ZZ	ukončení s uložením souboru
:w	uložení souboru (w = write)
:w filename	uložení souboru pod jménem
:wq	ukončení s uložením souboru
Pohyb kurzoru po obrazovce
h	o jeden znak doleva
j	o jednu řádku dolů
k	o jednu řádku nahoru
l	o jeden znak doprava
w	na začátek následujícího slova (w = word)
b	na začátek předcházejícího slova (b = back)
0	na začátek řádky
$	na konec řádky
H	na začátek první řádky obrazovky
M	na začátek prostřední řádky obrazovky
L	na začátek poslední řádky obrazovky
Ctrl-f	posun o celou obrazovku vpřed (f = forward)
Ctrl-b	posun o celou obrazovku zpět (b = backward)
Ctrl-d	posun o 1/2 obrazovky vpřed, tj. dolů (d = down)
Ctrl-u	posun o 1/2 obrazovky zpět, tj. nahoru (u = up)
Ctrl-e	posun o 1 řádku vpřed
Ctrl-y	posun o 1 řádku zpět
28G	skok na 28. řádku souboru
G	skok na poslední řádku souboru
58j	skok o 58 řádek dolů, tj. vpřed
34k	skok o 34 řádek nahoru, tj. zpět
Vkládání a změny textu v souboru
i	text bude vkládán od pozice kurzoru (i = insert)
a	text bude vkládán za pozici kurzoru (a=append)
I	text bude vložen před první znak aktuální řádky
A	text bude vkládán na konec řádky
o	text bude vložen za aktuální řádku (o = open)
O	text bude vložen před aktuální řádku
R	text bude přepisovat řádku od pozice kurzoru
Příkazy zadávané ve vkládacím modu:
Ctrl-h	
Backspace	
Enter	ukončí řádku a kurzor přejde na novou řádku
Příkazy zadávané v příkazovém modu:
r znak	přepíše znak na aktuální pozici kurzoru znakem znak (r = replace)
.	zopakuje předcházející příkaz od nové pozice kurzoru
Dělení a spojování řádek
i Enter, Esc	rozdělí řádku na dvě v místě kurzoru
J	připojí následující řádku na konec aktuální řádky (j = join)
5J	spojí 5 řádek
Mazání textu v souboru
x	smaže znak na aktuální pozici kurzoru
X	smaže znak před aktuální pozicí kurzoru
dd	smaže aktuální řádku (d = delete)
5dd	smaže 5 řádek počínaje aktuální řádkou
D	smaže text od pozice kurzoru do konce řádky
Mazání bloku textu pomocí značek a čísel řádek:
ma	označí aktuální řádku značkou a (jako značky lze používat malá písmena a až z) (m = mark)
‘a	přemístí kurzor na začátek řádky, která byla označena značkou a
d‘a	smaže blok od značky a do aktuální řádky
:244,560d	smaže řádky od 244. do 560. včetně
:25,.d	smaže řádky od 25. do aktuální řádky
:-2,+2d	smaže aktuální řádku, 2 předcházející a 2 násled.
:.,$d nebo dG	smaže vše od aktuální řádky do konce souboru
:‘a,‘bd	smaže blok řádek od značky a do značky b vč.
Obnovení smazaných řádek:
p	vloží naposledy zmazaný text
u	zruší nechtěně vloženou řádku (řádky)
Vyhledávání řetězců v souboru
/string	hledá následující výskyt řetězce string
?string	hledá předcházející výskyt řetězce string
n	opakuje poslední hledání
N	opakuje poslední hledání v opačném směru
Použití speciálních metaznaků v řetězcech:
	* ... opakovaný výskyt předchozího znaku ^ ... začátek řádku $ ... konec řádku . ... libovolný znak \< ... začátek slova \> ... konec slova [xyz] ... libovolný z uvedených znaků (xyz) [a-h] ... libovolný znak mezi a a b [^xyz] ...libovolný znak kromě uvedených (xyz) Význam metaznaku se ruší \ (to se týká . * [ ^ $ ~ & /\ )
Příkazy ovlivňující vyhledávání řetězců:
:set ic	nerozlišují se malá a velká písmena (ignorecase)
:set nomagic	nebere . * [ jako metaznaky
Zaměňování řetězců v souboru
:s/find/replace/	na aktuální řádce nahradí první výskyt řetězce find řetězcem replace
:s/find/replace/g	totéž, ale pro všechny výskyty find
:4,8s/find/replace/	na řádcích 4 až 8 včetně nahradí první výskyty
:.,$s/find/replace/g	v celém souboru nahradí všechny výskyty (místo 1,$ stačí napsat jen %)
:%s/find/replace/gc	zaměňování textu s potvrzováním (c = confirm)
Operace s vybranými řádky:
:g/string/s/find/replace/g	Na řádcích obsahujících string provede záměnu find za replace
:.,$g/string/d	od aktuální řádky do konce souboru vymaže řádky obsahující řetězec string
Další příkazy editoru vi
Ctrl-r	obnoví obsah obrazovky
:!command	provede příkaz operačního systému command
u	zruší poslední příkaz mazání (u = undo)
U	obnoví aktuální řádku do stavu před editací

Editor vi - strana 3

Editor vi

TRITON

1999-11-01T22:30:00