Vi — это текстовый редактор для Linux, предназначенный для использования в консоли. По удобству он сильно так себе. Интерфейс абсолютно не интуитивный. Чтобы начать им пользоваться необходимо обязательно читать руководство. В этой статье коротко главное.
Я решил уделить внимание Vi, поскольку периодически приходится с ним сталкиваться. Он в обязательном порядке есть во всех Linux-системах и Linux-устройствах. Например, в модемах, роутерах, видеорегистраторах. Подключаясь к ним через SSH или Telnet иногда требуется отредактировать какой-нибудь файл. И вот здесь Vi выручает. Альтернативных редакторов бывает просто нет.
Всё управление Vi только с клавиатуры. На экране никаких подсказок. Предполагается, что функциональные кнопки и команды пользователь помнит.
Открываем файл в Vi:
vi название_файла
или:
vi /путь/к/файлу/название_файла
По умолчанию редактор находится в командном режиме. Это значит, что нажимая на клавиатуре разные буквы, цифры или их последовательности будут выполнятся какие-нибудь действия.
Самое важное, что можно делать в этом режиме:
h
,j
,k
,l
— перемещение курсора влево, вниз, вверх, вправо.Ctrl + f
,Ctrl + b
— перемещение на страницу вниз, вверх.x
— удаление символа под курсором.dd
— удаление строки на которой находится курсор.
Не всегда, но в дополнение к этому могут работать стандартные функциональные кнопки клавиатуры — стрелки, Home
, End
, Page Up
, Page Down
, Delete
.
Если требуется что-то напечатать, то сперва необходимо поставить курсор в нужное место, затем нажать кнопку i
. Теперь мы в режиме ввода текста, печатаем. Для выхода из этого режима нажимаем Esc
. Мы снова в командном режиме.
В режиме ввода текста перемещаться нельзя. Поэтому выходим из него каждый раз, когда необходимо поместить курсор в другое место.
Для окончания работы нажимаем :
, курсор начинает мигать внизу экрана, теперь:
q!
иEnter
— выход из Vi без сохранения изменений.q
иEnter
илиw!
иEnter
— выход из Vi с сохранением изменений.- Если вы передумали выходить, нажмите
Esc
для возврата в командный режим.