Основы операционной системы UNIX

         

Основные команды


Основные команды редактора vi представлены в табл. 22.

Таблица 22. Сводка основных команд редактора vi



Перемещение курсора
H (Ctrl-h)курсор влево
J (Ctrl-n)курсор вниз
K (Ctrl-p)курсор вверх
L (Space)курсор право
Ctrl-uПереход вверх на половину экрана
Ctrl-dПереход вниз на половину экрана
Ctrl-fНа страницу вперед (PageDn)
Ctrl-bНа страницу назад (PageUp)
0Переход в начало текущей строки
$Переход в конец текущей строки
nGПереход на строку с номером n
Добавление текста
aДобавить текст после курсора
AДобавить текст в конце текущей строки
iВставить текст перед курсором
IВставить текст в начале текущей строки
oОбразовать новую строку под текущей
OОбразовать новую строку над текущей
Изменение текста
~Изменить регистр символа над курсором
rЗамена одного символа
RЗамена символов
Удаление текста
xУдаление символа
ddУдаление строки
NddУдаление N строк
Поиск и замена
/strПоиск строки str вперед. str может быть регулярным выражением
?/strПоиск строки str назад
nПовторить поиск в том же направлении
NПовторить поиск в обратном направлении
:[range]s/old/new/[g]Заменить old на new в указанном диапазоне строк range. new и old могут быть регулярными выражениями, а range задается аналогично диапазону строк в редакторе ed. Суффикс g означает заменить во всем файле.
Копирование текста
yyКопирование строки в целом
NyyКопирование N строк
pВставить из буфера после (курсора, текущей строки)
PВставить из буфера перед (курсором, текущей строкой)
Выход из редактора
:wq ENTERЗапись и выход. Записать текст из буфера в файл и выйти из редактора.
:x ENTERУсловная запись и выход. Записать текст из буфера только при наличии изменений и выйти из редактора.
:q! ENTERЗакончить редактирование без записи изменений.
Другие команды
!Выполнить одну команду интерпретатора
.Повторить последнюю команду
uОтменить действие последней команды
JСоединить строки
Ctrl-GПоказать номер текущей строки

Курсор можно перемещать и клавишами перемещения курсора или клавишами PageUp, PageDn, но эти возможности, в отличие от описанных в таблице, поддерживаются не на всех терминалах.



Содержание раздела