==== Основные команды vi ==== ^Команды ^Выполняемые функции ^ |TERM=terminal_name | |export TERM |Установка конфигурации терминала | |tput init |Инициализировать терминал как terminal_name| |vi filename |Вызов редактора vi для редактирования файла filename| |a |Добавить текст после курсора| h Перемещает курсор на один символ влево j Перемещает курсор вниз на одну строку k Перемещает курсор вверх на одну строку l Перемещает курсор на один символ вправо x Удалить символ Возврат каретки Перейти из режима ввода в командный режим :w Записать в файл :q Завершить работу с редактором :wq Записать буфер в файл и завершить работу с редактором vi ZZ Записать изменения в файл и завершить работу с vi Команды позиционирования курсора Команда Действие команды Позиционирование на символ h Перемещает курсор на один символ влево l Перемещает курсор на один символ вправо BACKSPACE Перемещает курсор на один символ влево SPACEBAR Перемещает курсор на один символ вправо fx Осуществляет поиск указанного символа x справа от текущей позиции курсора Fx Осуществляет поиск указанного символа x слева от текущей позиции курсора tx Осуществляет перемещение курсора вправо на символ до указанного символа x Tx Осуществляет перемещение курсора влево на символ до указанного символа x ; Повторяет предыдущий поиск символа. Команда ; запоминает символ и ищет следующее появление символа в текущей строке , Повторяет предыдущий поиск символа, но в обратном направлении j Перемещает курсор вниз на одну строку k Перемещает курсор вверх на одну строку - Перемещает курсор на одну строку вверх, позиционируя его на первом ненулевом символе + Перемещает курсор вниз на одну строку и позиционирует на первый непустой символ Перемещает курсор вниз на одну строку и позиционирует на первый непустой символ Позиционирование на строку $ Переместить курсор на последний символ в строке 0(ноль) Переместить курсор на первый символ в строке ^ Переместить курсор на первый ненулевой символ в строке Позиционирование на слово w Перемещает курсор к началу следующего слова W Игнорирует все знаки пунктуации и перемещает курсор на следующее после пробела слово e Перемещает курсор на последний символ в следующем слове E Перемещает курсор на последний символ в слове. Игнорирует все символы пунктуации за исключением пробела b Перемещает курсор к первому символу предыдущего слова B Используется подобно команде b, за исключением того, что слова разделяются только символами пробел и новая строка Позиционирование на предложение ( Перемещает курсор в начало текущего предложения ) Перемещает курсор в начало следующего предложения Позиционирование на параграф { Переместить курсор в начало текущего параграфа, который ограничивается пустой строкой } Переместить курсор в начало следующего параграфа Позиционирование в окне H Переместить курсор к первой строке экрана M Переместить курсор к средней строке экрана L Переместить курсор к последней строке экрана Дополнительные команды перемещения курсора в редакторе vi Команда Действие Прокрутка ^f Прокрутка экрана вперед на полное окно. Откры- вается новое окно с текстом, расположенным ниже текущего окна ^d Прокрутка текста вниз на пол-окна. Открываются строки, расположенные ниже текущего окна ^b Прокрутка экрана назад на полное окно. Откры- вается новое окно с текстом, расположенным выше текущего окна ^d Прокрутка текста вверх на пол-окна. Открываются строки, расположенные выше текущего окна Позиционирование с помощью номера строки 1G Перейти к первой строке в файле G Перейти к последней строке в файле ^g Выдать номер строки и состояние файла Поиск по шаблону /pattern Поиск вперед в буфере до первого появления шаблона. Курсор помещается на первом символе шаблона ?pattern Поиск назад в буфере до первого появления шаблона. Курсор помещается на первом символе шаблона n Повторить последнюю команду поиска N Повторить последнюю команду поиска в обратном направлении Команды создания текста Команда Функция a Создать текст после курсора A Создать текст в конце текущей строки i Создать текст перед курсором I Создать текст перед первым ненулевым символом в текущей строке o Создать текст с начала новой строки, расположенной под текущей строкой O Создать текст с начала новой строки, расположенной над текущей строкой Возвратить vi в командный режим из режима ввода текста Команды удаления текста Команда Функция Режим ввода BACKSPACE Удалить текущий символ 1w Удалить текущее слово @ Удалить текущую строку нового текста или удалить весь новый текст в текущей строке Командный режим u Отменить последнюю команду U Восстановить текущую строку в прежнем состоянии x Удалить текущий символ ndx Удалить n-ый объект текста x dw Удалить слово над курсором и следующий за ним пробел, или знак пунктуации dW Удалить слово и пунктуацию над курсором с последующим за ним пробелом dd Удалить текущую строку D Удалить часть строки справа от курсора d) Удалить текущее предложение от текущей позиции курсора до конца d} Удалить текущий параграф от текущей позиции до конца Команды изменения текста Команда Функция r Заменить текущий символ R Заменить те символы, которые введены в режиме ESCAPE s Удалить символ, под которым расположен курсор и добавить текст. Для окончания режима ввода нажмите клавишу ESCAPE S Заменить все символы в строке cc Заменить все символы в строке ncx Заменить n объектов текста типа x (предложение, параграф) cw Заменить слово или оставшиеся символы в слове на новый текст C Заменить оставшиеся символы в строке от курсора до конца строки Команда y Команда Функция nyx Копирование n-го объекта текста типа x (предложение или параграф) yw Создание копии слова yy Создание копии текущей строки nyy Копирование n строк y) Создание копии всего текста до конца предложения y} Создание копии всего текста до конца параграфа Команды извлечения и присоединения текста Команда Функция p Помещает содержимое временного буфера, полученное с помощью команды y и команд удаления, в текст после курсора yy Создает копию строки текста и помещает во временный буфер nyx Создает копию n-го объекта текста типа x и помещает ее во временный буфер "xyn Помещает копию объекта текста типа n в в регистр с именем x "xp Помещает содержимое регистра x после курсора Специальные команды Команда Функция . Повторить последнюю команду j Соединить текущую строку со строкой, расположенной ниже ^l Очистить и восстановить текущее окно ~ Заменить нижний регистр на верхний Команды построчного редактора Команда Функция : Обозначает, что следующая за ней команда является командой построчного редактора :sh Временный возврат к shell для выполнения команд shell ^d Возврат из временного shell в текущее окно vi для продолжения редактирования :n Переход к n-ой строке буфера :x,yw data Записать строки от номера x до номера y в новый файл data :$ Переход к последней строке буфера :.,$d Удалить все строки в буфере, начиная с текущей и до послед- ней строки :r shell.file Вставить содержимое shell.file после текущей строки в буфере :s/text/new_words/ Заменить первое появление символов text в текущей строке на new_words :s/text/new_words/g Заменить каждое появление символов text в текущей строке на new_words :g/text/s//new_words/g Заменить каждое появление символов text в файле на new_words Команды завершения Команда Функция ZZ Записать буфер в файл, если после последней записи в буфере были сделаны изменения, и завершить работу с vi :wq Записать буфер в файл и завершить работу с vi :w filename Записать буфер в новый файл filename :q и завершить работу с vi :w! filename Перезаписать содержимое буфера в уже :q существующий файл filename и завершить работу с vi :q! Завершить работу с vi без записи буфера в файл, даже если содержимое буфера изменялось :q Завершить работу с vi без записи буфера в файл, если буфер не изменялся Специальные опции vi Опция Функция vi file1 file2 file3 Ввести три файла (file1 file2 и file3) в буфер vi для редактирования :w Записать текущий файл и начать :n редактирование следующего файла vi -r file1 Восстановить изменения, сделанные в файле file1 view file Осуществить просмотр файла с помощью опции "только чтение" чтобы предотвратить случайные изменения в файле file