Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
spo_voprosy.docx
Скачиваний:
9
Добавлен:
20.03.2016
Размер:
465.35 Кб
Скачать

18.9. Слова (w b)

Находясь в командном режиме, с помощью w вы переместись на следующее слово, а с b на предыдущее слово. wиbможно также использовать сdиyчтобы копировать и вставлять слова (dw db yw yb).

Таблица 18.9. Слова

command

action

w

Перенесет вас к следующему слову

b

Перенесет вас к предыдущему слову

3w

Перенесет вас на 3 слова вперед

dw

Удалит одно слово

yw

Скопирует одно слово

5yb

Скопирует 5 предыдущих слов

7dw

Удалит 7 следующих слов

18.10. Сохранить (или нет) и выход (:w :q :q! )

Нажмите «:» это откроет вам инструкции по vi(технически говоря, ввод двоеточия откроет вамex editor).:w запишет (сохранит) файл,:q выйти из неизмененного файла без сохранения, и:q! выйти изviбез изменений.:wq сохранить и выйти, тоже самое делает командаZZ в командном режиме.

Таблица 18.10. Сохранить и выйти vi

command

action

:w

Запишет (сохранит) файл

:w fname

Сохранит как fname

:q

Выход

:wq

Сохранить и выйти

ZZ

Сохранить и выйти

:q!

Выход без изменений

:w!

Сохранить в нередактируемый файл

Последняя команда немного особенная. С :w! vi попытается при помощиchmod получить права на запись (работает, если вы владелец) и используетchmod, чтобы вернуть права обратно при удачной записи. Это должно всегда работать в корне системы (и файловая система доступна для записи).

18.11. Поиск (/ ?)

Находясь в командном режиме, набирание «/» позволит вам искать в viстроки (может быть обычным выражением). Набрав /foo, вы начнете поиск после строчкиfooи

набрав ?barначнете поиск перед строчкойbar.

Таблица 18.11. Поиск (/ ?)

command

action

/string

Поиск после строчки string

?string

Поиск до строчки string

n

Перейти к следующему вводу поиска

/^string

Начать поиск stringс начала строки

/string$

Начать поиск stringс конца строки

/br[aeio]l

Поиск bral brel bril и brol

/\<he\>

Искать слово he (исключаяhereиthe)

18.12. Замена ( :1,$ s/foo/bar/g )

Заменяет все входящие строчки с fooнаbar, для начала переключитесь на ex mode с помощью «:». Затем скажитеviкакие строки вы будете использовать, к примеру, 1,$ заменит все строчки от первой и до последней. Вы можете написать 1,5, это заменит 5 первых строчек.s/foo/bar/gзаменит все входящиеfooнаbar.

Таблица 18.12. Замена

command

action

:4,8 s/foo/bar/g

Заменить все fooнаbarс 4 по 8 строчки

:1,$ s/foo/bar/g

Заменить все fooнаbarпо всем строчкам

18.13. Чтение файлов (:r :r !cmd)

Находясь в командном режиме, :rfooпрочитает файл с именемfoo, :r !foo выполнит команду foo. Результат поместится в текущее местоположение. Таким образом :r!lsпоместит листинг текущего каталога в ваш текстовый файл.

Таблица 18.13. Чтение файлов

command

action

:r fname

(Чтение) файла fnameи вставка содержимого

:r !cmd

Выполнить и вывести cmd

18.14. Текстовые буферы

В viхранится 36 буферов для хранения текста. Вы можете использовать их с помощью символа «”»

Таблица 18.14. Текстовые буферы

command

action

"add

Удаление текущей строчки и копирование ее в буфер а

"g7yy

Скопировать 7 строчек в буфер g

"ap

Вставка текста из буфера а

18.15. Несколько файлов

Вы можете редактировать несколько файлов с vi. Вот несколько советов.

Таблица 18.15. Несколько файлов

command

action

vi file1 file2 file3

Выбрать для редактирования 3 файла

:args

Списки файлов и пометки на активных файлах

:n

Начать редактировать следующий файл

:e

Переключиться на следующий отредактированный файл

:rew

Переместить файл указатель на первый файл

18.16. Аббревиатуры

С помощью :ab вы можете создавать аббревиатуры вvi. Используйте:unna, чтобы убрать аббревиатуру.

Таблица 18.16. Аббревиатуры

command

action

:ab str long string

Аббревиатура str для 'long string'

:una str

Убрать аббревиатуру str

18.17. Горячие клавиши

Как и для аббревиатур, вы можете использовать горячие клавиши с :mapдля командного режима и:map!для режима вставки.

Этот пример показывает, как установить на F6 функциональную клавишу для переключения между set number иset nonumber. <bar> разделяет две команды,set number! меняет состояние иset number?сообщает о текущем состоянии.

:map <F6> :set number!<bar>set number?<CR>

18.18. Настройка параметров

Некоторые параметры, которые можно настроить в vim.

:set number ( also try :se nu )

:set nonumber

:syntax on

:syntax off

:set all (list all options)

:set tabstop=8

:set tx (CR/LF style endings)

:set notx

Вы можете настроить следующие параметры (и многое другое) в /.vimrc дляvimили~/.exrc дляvi.

paul@barry:~$ cat ~/.vimrc

set number

set tabstop=8

set textwidth=78

map <F6> :set number!<bar>set number?<CR>

paul@barry:~$

Часть VI. Создание скриптов

Оболочки, такие как BashиKornимеют поддержку программных конструкций, которые могут быть сохранены в виде скриптов. Эти скрипты в свою очередь, стали командами оболочки. Многие команды в Linux, это скрипты. Скрипты профиля пользователя выполняются, когда пользователь входит в систему и, тогда, выполняются скрипты инициализации, когдаdaemonостановлен или запущен. Это означает, что системному администратору необходимы базовые знания скриптов, чтобы понять, как запускаются сервера и приложения, обновления, модернизация, исправления, поддерживание, настройки и удаление, а также понять, как построена среда пользователя. Целью этой главы является дать вам достаточно информации, чтобы иметь возможность читать и понимать скрипты. Чтобы не стать создателем сложных скриптов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]