Skip to content

Latest commit

 

History

History
89 lines (61 loc) · 5.42 KB

103_8.md

File metadata and controls

89 lines (61 loc) · 5.42 KB

103.8 Текстовый редактор Vi**.**

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

Изучаем :

  • навигацию по документу с использованием vi;
  • использование основных режимов работы vi;
  • вставку, редактирование, удаление, копирование и поиск текста.

**Термины и утилиты: **

  • vi
  • /, ?
  • h,j,k,l
  • i, o, a
  • c, d, p, y, dd, yy
  • ZZ, :w!, :q!, :e!

Так как все основные настройки в Linux выполняются редактированием файлов, все журналы, устройства, демоны и т.д. тоже по сути являются файлами, то текстовый редактор является одним из важнейших инструментов управления ОС. Существует множество редакторов с различными возможностями, здесь же будет рассмотрен редактор Vi.

Vi имеет модальный интерфейс и одни и те же клавиши в разных режимах выполняют разные действия. По умолчанию работа начинается в командном режиме.

Для перемещения по документу используются следующие символы:

  • h или (перемещение на символ влево);
  • j или (перемещение на символ вниз);
  • k или (перемещение на символ вверх);
  • l или (перемещение на символ вправо);
  • b** ** (перемещение в начало слова);
  • e** ** (перемещение в конец слова);
  • **( ** (перемещение в начало предложения);
  • **) ** (перемещение в конец предложения);
  • **{ ** (перемещение в начало абзаца);
  • **} ** (перемещение в конец абзаца);
  • **^ ** (перемещение в начало строки);
  • **$ ** (перемещение в конец строки);
  • 1** G **** ** (перемещение в начало файла);
  • G** ** (перемещение в конец файла).

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

  • I** ** (режим вставки перед текущим символом);
  • a** ** (режим вставки после текущего символа);
  • o** ** (вставить новую строчку);
  • **s ** (стереть символ и вставить).

Для возврата в командный режим можно использовать клавишу Esc или сочетание Ctrl** + **C

Находясь в режиме редактирования можно использовать буфер обмена:

  • y _ (скопировать)__;_
  • d _ ( вырезать )__;_
  • c _ ( изменить )__;_
  • p _ (вставить)._

Также возможны комбинации с символами перемещения по тексту и обозначениями d (строка), w (слово) и l (символ); например

yw _ (скопировать слово);_

dd _ (вырезать строку);_

cl _ (изменить символ);_

d** $**_ (удалить с текущего места до конца строки);_

y** }**_ (скопировать с текущего места до конца абазца);_

Для поиска информации доступны символы:

  • **/ ** _ (искать ниже по тексту набор символов, указанных после «/»);_
  • **? ** _ (искать выше по тексту набор символов, указанных после «?»);_
  • n** ** _ (показать следующий результат поиска);_
  • N** ** _ (показать предыдущий результат поиска)._

Для завершения работы с файлом:

  • :e! _ (отменить все изменения, где «!» - игнорировать все предупреждения);_
  • :** w **! _ (записать изменения);_
  • **:q ** (выйти из файла);

Как всегда, возможны комбинации, например:

:** wq ****! newfile.txt ** (сохранить под именем newfile . txt и выйти);

Также доступны сокращенные команды:

  • **ZZ ** (сохранить и выйти)__;
  • ZQ** ** (не сохранять и выйти);