Vi или Визуальный редактор - это текстовый редактор по умолчанию, который поставляется с большинством систем Linux. Это текстовый редактор на базе терминала, который пользователям необходимо изучить, в основном, когда более удобные текстовые редакторы недоступны в системе.
Некоторые другие причины использовать Vi включают:
- Vi доступен почти на всех операционных системах.
- Продуманный набор сочетаний клавиш, состоящих из коротких нажатий.
- Вы можете использовать Vi в качестве отличного html-редактора.
- Команды Vi настолько богаты, что вам практически не нужно отрывать руки от клавиатуры.
- Редактор Vi создает файлы небольшого размера, что позволяет не занимать много места в памяти.
- Он бесплатный.
Создание файла с помощью Vi
Чтобы создать файл в Vi, используйте следующую команду:
1 | vi filename |
Пример:
1 | vi textfile.txt |
Чтобы создать файл в определенном месте, используйте следующую команду:
1 | vi /path/to/filename |
Открытие уже существующего файла
Для того чтобы открыть уже существующий файл, используйте следующую команду:
1 | vi /path/to/filename |
Файл с указанным именем будет создан, если он еще не существует в системе.
Режимы работы Vi
Прежде чем приступить к работе с файлами, важно узнать, что редактор Vi работает в двух режимах: командный режим и режим вставки. В командном режиме вы можете перемещаться по тексту, искать слова в файле, сохранять файл и т.д. Вы можете выполнять различные команды, но не можете вставлять что-либо в текст; для этого вам нужно находиться в режиме вставки. Помните, что в командном режиме набранные вами клавиши будут выполнять только команды, а в режиме вставки вы сможете набирать и редактировать текст.
Переключение между режимами
Когда вы впервые создаете или открываете файл в Vi, вы находитесь в командном режиме. Хотя кажется, что здесь можно набирать текст, это не так. Чтобы написать что-либо, нужно перейти в режим вставки, нажав клавишу i. Чтобы вернуться в командный режим, достаточно нажать клавишу esc.
Примечание: Важно отметить, что редактор Vi чувствителен к регистру. Поэтому если ваши клавиши не дают желаемых результатов, убедитесь, что вы случайно не нажали клавишу Caps Lock.
Командный режим
Vi обычно запускается в командном режиме. Вы можете выполнять административные операции с файлами, такие как сохранение файла, выполнение команд, перемещение курсора по файлу, вырезание/выдергивание и вставка строк и слов в файл. Командный режим также позволяет находить и заменять текст в файле.
Перемещение курсора по файлу:
Обычно вы можете перемещать курсор по тексту в файлах с помощью клавиш со стрелками вверх, вниз, влево и вправо на клавиатуре. Если вы используете удаленный терминал и клавиши со стрелками не работают нужным образом, вы можете использовать следующие клавиши в качестве замены:
Перемещение влево: h
Перемещение вправо: l
Перемещение вверх: k
Переместить вниз: j
Режим вставки
Чтобы ввести текст в файл, необходимо находиться в режиме вставки. Все, что вы вводите в этом режиме, будет считаться текстом и добавляться в файл.
Работа с файлами vi
Вставка текста
После создания нового файла или открытия уже существующего вы можете написать в нем текст, предварительно переключившись в режим вставки нажатием клавиши i. Вы заметите, что сама команда vi обычно не появляется на экране. Вы можете набрать несколько строк и нажать <return> в конце каждой строки. Для длинных строк vi не обводит текст; он обрывает строку у края экрана.
Выбор текста
Выделить текст для копирования, вырезания и вставки можно только в командном режиме. Для выделения текста установите курсор в левой или правой части текста, который вы хотите выделить, и нажмите клавишу v. Затем вы можете перемещать курсор для выделения текста.
Копирование текста
После выделения текста, как описано выше, вы можете нажать y, чтобы скопировать текст, и x, чтобы вырезать текст. Чтобы вставить текст, установите курсор в нужное место и нажмите клавишу p, чтобы вставить скопированный или вырезанный текст. Помните, что для выполнения этих операций вы должны находиться в командном режиме.
Удаление текста
Для того чтобы удалить символ из файла, переместите курсор на нужную букву и нажмите клавишу x. Чтобы удалить больше символов, например, три, наберите 3x.
Сохранение и выход из файла
В командном режиме введите :wq и нажмите Enter, чтобы записать файл на диск и выйти из vi. Команда :w будет только записывать файл на диск, а :q - выходить из vi без сохранения файла. Вы также можете разделить эту команду, например, набрать :w и нажать Enter для записи файла на диск без выхода из программы или набрать :q для выхода из vi без сохранения файла.
Если вы внесли изменения в файл и вышли из программы без сохранения изменений, vi выдаст вам предупреждение. Вы можете проигнорировать предупреждение, используя команду :q! и нажмите Enter.
Общие команды vi
Вы будете использовать следующие команды управления Vi для работы с файлами в редакторе Vi:
Команда | Описание |
Редактирование файла | |
i | Используйте эту команду для вставки текста перед текущим положением курсора |
I | Используйте эту команду для вставки текста в начало строки |
a | Используйте эту команду для вставки текста после текущего местоположения курсора |
o | Используйте эту команду для создания новой строки для текста ниже текущего местоположения курсора |
Удаление символов | |
x | Используйте эту команду для удаления символа под текущим местоположением |
X | Используйте эту команду для удаления символа перед текущим местоположением |
dw | Используйте эту команду для удаления с текущего места до следующего слова |
D | Используйте эту команду для удаления с текущего места до конца строки |
dd | Используйте эту команду для удаления всей строки |
Копирование и вставка | |
yy | Используйте эту команду для копирования текущей строки |
p | Используйте эту команду для вставки скопированного текста после курсора |
P | Используйте эту команду для вставки выдернутого (вырезанного) текста перед курсором |
Изменение текста | |
cc | Используйте эту команду для удаления содержимого строки |
s | Используйте эту команду для замены символа на написанный вами символ |
r | Используйте эту команду для замены символа под курсором и возврата в командный режим |