Основы работы с редактором VI



Для запуска редактора набираем следующую команду:



$ vi имя_файла



Данная команда откроет файл имя_файла в VI. Если файл с таким именем отсутствует, то он будет создан.



Пользователь может взаимодействовать с редактором VI в двух режимах: режиме ввода команд и режиме ввода текста. Клавиша i для перехода в режим ввода текста. Для возвращения в режим команд клавишу ESC.



Основные команды, используемые в редакторе VI:

<Esc>:wq! - выход с сохранением файла



<Esc>:q! - выход без сохранения файла



i/I (insert) - вставка текста в начало текущей строки



a/A (append) - набор текста в конец текущей строки



o/O (open) - вставить пустую строку после/перед текущей



Команды удаления текста (в буфер):



х - удаление текущего символа



[#]dw - удаление # текущих слов



[#]dd -удаление # текущих строк



dG - удаление всех строк от текущей до последней



d$ - удаление конца строки от текущей позиции



d^ - удаление начала строки до текущей позиции.



Команды отмены произведенных изменений в текущей строке:



u - отмена (undo) последнего изменения

U - отмена всех изменений.



Команды копирования указанного в команде объекта в буфер:



[#]yw - копирование (yank) текущего слова



[#]yy - копирование текущей строки



уG - копирование строк от текущей до конца файла



y$ - копирование части строки от курсора до конца строки



y^ - копирование части строки от курсора до начала строки



Команды вставки буфера в текст:



p/P - после/перед курсором



Команды изменения текста:



r<символ> - заменяет (change) текущий символ на указанный



с<объек> - заменяет указанный объект на текст, с клавиатуры - <Esc>:



#cw -изменение текущего слова



#cc - всей текущей строки



cG - всех строк файла от текущей до последней



cS -части строки от курсора до конца строки



с^ - части строки от курсора до начала строки.



Команды поиска строки файла по фрагменту её текста:



/<текст> - от текущей строки до конца файла с переходом на начало



?<текст> - от текущей строки до начала файла и по всему файлу



n - поиск следующей строки в файле, аналогичной найденной



N - поиск предыдущего вхождения в файл заданной строки.



Префиксные команды:



:w файл - запись текущего буфера в файл



:m,nw файл - запись строк с m-ой по n-ую в файл



:e! - отмена всех изменений в буфере с перезагрузкой в него файла с диска



:e файл - загрузка файла в буфер с замещением старого содержимого



:r файл - добавление содержимого файла после текущего положения курсора



:set опция - настройка редактора (см. полное описание vi).