9 РАБОТА С РЕДАКТОРОМ LINUX - VI Лабораторная работа №9 9.1 Цель работы Целью выполнения лабораторной работы является: знакомство с редактором Linux – Vi; получение навыков по созданию, редактированию и сохранению текстовых файлов в операционной системе Linux. 9.2 Задание на лабораторную работу Создать текстовый файл в редакторе Vi. Продемонстрировать возможность основных приёмов работы, представленных в разделе «теоретические сведения». Факультативно познакомиться с командами, представленными в таблице 3. Таблица 3 - Основные команды редактора vi Вырезание и вставка/удаление текста " Назначение буфера. Используется с буквой или цифрой. D Удалить от текущей позиции курсора до конца строки. P Вставить текст из буфера в позицию перед курсором. Если не определен буфер командой ", используется буфер общего назначения. X Удалить символ перед текущей позицией курсора. Y Копировать текущую строку в буфер. Если не определен буфер, используется буфер общего назначения. d Удалить. "dd" - удалить текущую строку. Аргумент count определяет количество удаляемых строк. Если не определен буфер командой ", используется буфер общего назначения. p Вставляет текст после текущей позиции курсора. Если не определен буфер командой ", используется буфер общего назначения. x Удаляет символ в позиции курсора. Аргумент count определяет количество удаляемых символов. Символы будут удалены после текущей позиции курсора. y Копировать. "yy" - копировать текущую строку. Аргумент count определяет количество копируемых строк. Если не определен буфер командой ", используется буфер общего назначения. Продолжение таблицы 3 Вставка текста A Добавляет текст в конце строки. I Добавляет текст в начале строки. O (letter oh) Переключает в режим вставки текста и вставляет пустую строку перед текущей строкой. a Переключает в режим вставки текста и добавляет текст после курсора. Аргумент count определяет количество повторений введенного текста. i Переключает в режим вставки текста и добавляет текст перед курсором. Аргумент count определяет количество повторений введенного текста. o Переключает в режим вставки текста и вставляет пустую строку после текущей строки. Перемещение по файлу ^B Переход на один экран назад. Аргумент count определяет количество экранов. ^D Переход на половину экрана вперед. Аргумент count определяет количество строк. ^F Переход на один экран вперед. Аргумент count определяет количество экранов. ^H Переход на один символ влево. Аргумент count определяет количество символов. ^J Переход на одну строку вниз. Аргумент count определяет количество строк. ^M Переход в начало следующей строки ^N Переход на одну строку вниз. Аргумент count определяет количество строк. ^P Переход на одну строку вверх. Аргумент count определяет количество строк. ^U Переход на половину экрана назад. Аргумент count определяет количество строк. $ Переход в конец текущей строки. Аргумент count определяет строку. % Переход к парной круглой или фигурной скобке. ^ Переход к первому символу. ( Переход в начало предложения. ) Переход в начало следующего предложения. Продолжение таблицы 3 Переход к предыдущему абзацу. Переход к следующему абзацу. Переход в столбец, определенный аргументом count. Переход к первому символу в следующей строке. Переход к первому символу в предыдущей строке. Переход к первому символу в текущей строке. (Zero)Переход в начало текущей строки. Переход назад на одно слово. Переход в конец текущего слова. Переход в конец файла. Аргумент count определяет номер строки для перехода. H Переход к первому символу вверху экрана. L Переход к первому символу внизу экрана. M Переход к первому символу в середине экрана. W Переход в начало следующего слова. b Переход назад на одно слово. Если курсор в середине слова переход в начало текущего слова. e Переход вперед на одно слово. Если курсор в середине слова - переход в конец текущего слова. h Переход на один символ влево. j Переход вниз на одну строку. k Переход вверх на одну строку.. l Переход на один символ вправо. w Переход вперед на одно слово. Если курсор в середине слова - переход к первому символу следующего слова. Перемещение по экрану ^E Переход на одну строку вперед. Аргумент count определяет количество строк. ^Y Переход на одну строку назад. Аргумент count определяет количество строк. z Обновить экран. "z<return>" устанавливает текущую строку вверх экрана; "z." устанавливает текущую строку в середину экрана; and "z-" устанавливает текущую строку вниз экрана. Аргумент count определяет строку для замены текущей строки. Например : "16z." устанавливает строку 16 в центр экрана. { } | + _ 0 B E G Продолжение таблицы 3 Замена текста C Заменить от текущей позиции курсора до конца строки. R Заменить текст до нажатия клавиши "Escape". S Заменить всю строку. c Заменить. "cc" заменяет текущую строку. Аргумент count определяет количество строк. r Заменить символ в позиции курсора. Аргумент count определяет количество символов. s Заменить символ в позиции курсора и перейти в режим вставки текста. Аргумент count определяет количество символов. Символ ($) будет установлен на последнем символе для замены. Поиск текста , Повторить последнюю команду "f", "F", "t" или "T" в обратном направлении. / Искать определенную строку вперед по файлу. ; Повторить последнюю команду "f", "F", "t" или "T". ? Искать определенную строку назад по файлу F Искать определенный символ вперед в текущей строке. При успешном выполнении - курсор перемещается в позицию найденного символа. N Повторить последний поиск "/" или "?" исключая обратное направление. T Искать определенный символ вперед в текущей строке. При успешном выполнении - курсор перемещается в позицию после найденного символа. f Искать определенный символ в текущей строке. При успешном выполнении - курсор перемещается в позицию найденного символа. n Повторить последний поиск "/" или "?". t Искать определенный символ в текущей строке. При успешном выполнении - курсор перемещается в позицию перед найденным символом. Манипулирование символьно/строковым форматированием ~ Изменить регистр символа в позиции курсора. < Выполнить сдвиг влево на величину shiftwidth. "<<" - сдвиг текущей строки влево (использует аргумент count). Продолжение таблицы 3 Выполнить сдвиг вправо на величину shiftwidth. ">>" - сдвиг текущей строки вправо (использует аргумент count). J Объединить текущую строку с последующей. Аргумент count определяет количество строк. Сохранение и выход ^\ Выход из режима "VI" в режим "EX". Редактор EX строковый редактор, на основе которого построен редактор VI. Команда редактора EX для возврата в VI :vi. Q Выход из режима "VI" в режим "EX". Редактор EX строковый редактор. Команда редактора EX для возврата в VI :vi. ZZ Выход из редактора с сохранением изменений. Разное ^G Показать имя файла и статус. ^L Очистить и перерисовать экран. ^R Перерисовать экран и удалить ошибочные строки. ^[ Отменить частично набранную команду. ^^ Возвратиться к последнему редактированному файлу. ! Выполнить команду оболочки. & Повторить предыдущую команду :s. . Повторить последнюю команду. : Начало команды редактора "EX". Команда выполняется один раз после нажатия клавиши "Enter". @ Напечатать команду из определенного буфера. U Восстановить текущую строку. m Отметить текущую позицию определенным символом. u Отменить последнее изменение файла. Повторная команда восстанавливает изменения > 9.4 Вопросы к лабораторной работе 9.4.1 Как запускается редактор Vi? 9.4.2 В каких режимах работает редактор Vi? 9.4.3 Как осуществляется управление курсором? 9.4.4 Как осуществляется ввод, добавление и удаление текста в редакторе? 9.4.5 Каким образом файл можно сохранить под другим именем или перезаписать? 9.4.6 Как вставить содержимое одного файла в другой? 9.4.7 Как осуществляется выход из редактора и открытие другого файла для редактирования? 9.4.8 Как осуществляется копирование, вырезка и вставка текста? 9.4.9 Какая команда отменяет действие? Как изменить и заменить текст в файле? 9.4.10 Какая команда осуществляет поиск текста в документе? Как заменить слова в документе? 9.4.11 Как перейти в файле к нужной строке?