|
| ||||||||||||||||||||||||
| ||||||||||||||||||||||||
7.19. Использование команд построчного редактораРедактор vi имеет доступ ко многим командам построчного редактора ex. В этом подразделе обсуждаются некоторые наиболее часто используемые команды. Команды редактора ex очень похожи на команды редактора ed. Команды построчного редактора начинаются с символа ":" (двоеточие). После того, как вы введете двоеточие, курсор опускается в низ экрана и отображает двоеточие. Оставшаяся часть команды тоже появляется внизу экрана. 7.19.1. Временный возврат к shellКогда вы входите в vi, то содержимое буфера заполняет ваш экран, делая невозможным выдачу команд для shell. Однако вам может это понадобиться. Например, вам необходимо будет получить информацию из другого файла для присоединения ее к текущему тексту. Вы можете получить эту информацию, запустив одну из команд shell, которая отображает текст файла на экране. Например, cat или pg. Однако процедура завершения работы с редактором и повторный вход в редактор потребуют времени и сил. Редактор vi предлагает вам два способа временного выхода из редактора для того, чтобы вы могли ввести команды shell (и даже редактировать другие файлы) не покидая сам редактор. Это команды :sh и :!. Команда :! позволяет вам выйти из редактора и запустить команду shell одной командной строкой. Находясь в командном режиме редактора vi, введите :!. Эти символы будут напечатаны в низу экрана. Сразу же после символа ! введите команду shell. Shell запустит вашу команду, даст вам ответ и напечатает сообщение: Hit return to continueПосле того, как вы нажмете клавишу RETURN, vi обновит экран и курсор примет свое прежнее положение. Команда редактора :sh позволяет вам делать то же самое, но ведет по другому себя на экране. Из командного режима редактора vi введите :sh и нажмите клавишу RETURN. Подсказка команды shell появится на следующей строке. Ведите ваши команды после подсказки так, будто бы вы работаете в нормальном режиме с shell. Когда вы будете готовы вернуться к редактору vi, введите ^d или exit. Экран обновит информация из вашего буфера и курсор вновь переместится на прежнее место. При временном переходе к shell даже изменение справочников не мешает возврату к буферу редактора vi при вводе ^d или exit. 7.19.2. Запись текста в новый файлКоманда "w" позволяет вам создавать файл, копируя строки текста из файла, который вы в данный момент редактируете, в файл, который вы указали. Чтобы создать новый файл нужно указать строку или строки (номера строк) и имя нового файла в командной строке. Общий формат этой команды: :line_number[, line_number]w filenameНапример, чтобы записать третью строку буфера в файл three, введите: :3w three<CR> При успешном создании нового файла, редактор vi напечатает следующую информацию: "three" [New file] 1 line, 20 charactersЧтобы записать текущую строку в файл, укажите . (точку) как адрес строки: :.w junk<CR> Создастся новый файл с именем junk. Он будет содержать только текущую строку буфера vi. Вы можете записать часть буфера в новый файл, обозначив границы строк. Например, чтобы строки с 23-й по 37-ю записать в файл, введите следующую команду: :23,37w newfile<CR> 7.19.3. Переход к указанной строкеВы можете переместить курсор к любой строке в буфере, если введете команду: :n<CR>где n - номер строки в буфере. 7.19.4. Удалить остаток буфераОдним из самых простых способов удаления всех строк от текущей строки и до конца буфера является использование команды "d" построчного редактора со специальнымим символами для текущей и последней строк: :.,$d<CR>где .(точка) - обозначает текущую строку; $ - обозначает последнюю строку. 7.19.5. Добавить файл в буферЧтобы добавить текст из файла ниже указанной строки в буфер редактора, воспользуйтесь командой "r". Например, чтобы перенести содержимое файла data в ваш текущий файл, поместите курсор на то место, где должен стоять текст и введите команду: :r data<CR>Вместо перемещения курсора вы можете указать номер строки. Например, чтобы вставить файл data после 56-й строки в буфере, введите: :56r data<CR> 7.19.6. Провести глобальные изменения
В табл. 17 приведены команды построчного редактора, доступные в редакторе vi. Таблица 17
Назад | Содержание | Вперед |
|
CITForum © 1997–2025