vi – текстовий редактор для операційних систем сімейства Unix. Запускається редактор допомогою консолі. vi – має два основних режими: командний режим і режим вставки. При запуску редактора vi командний режим-це режим за замовчуванням. У цьому режимі клавіатура використовується для різних операцій, наприклад: збереження, пошук по тексту і т. д.
В режимі вставки клавіатура використовується для набору тексту. Для переходу в режим вставки використовується комбінація клавіш [Shift] + [I]. Зворотне перемикання в командний режим проводитися клавіша [Esc] або комбінація клавіш [Ctrl] + [C].

Часто використовувані команди

  • /str — Пошук рядка str вперед. str може бути регулярним виразом
  • ?str — Пошук рядка str тому
  • n — Повторити пошук в тому ж напрямку
  • N — Повторити пошук у зворотному напрямку
  • :[range]s/old/new/[g] — Замінити на new old в зазначеному діапазоні рядків range. new та old можуть бути регулярними виразами, а range задається аналогічно діапазону рядків у редакторі ed. Наприклад, для діапазону рядків з 32 з 64 range буде 32,64, перший рядок відповідає 1, остання визначається через символ $. Суфікс g означає замінити всі входження old в рядку, а не тільки перше.
  • :e! — перезавантажити поточний файл
  • :33 — перестрибнути на 33ю рядок текстового файлу
  • i — перейти в режим редагування
  • a — перейти в режим редагування після поточного символу
  • u — скасувати останню дію
  • . — повторити останню дію
  • x — видалити символ під курсором
  • dd — видалити весь рядок
  • :w — зберегти файл на диску
  • :wq — вихід зі збереженням файлу
  • :q — вихід
  • :q! — вихід без збереження файлу
  • :r — вставити в документ інший файл

Щоб отримати детальну допомогу з редактора vi, виконайте команду man vi в Unix shell (q — вихід з довідки).

Використання регулярних виразів

  • /^$/ — порожній рядок, тобто лише кінець рядка
  • /./ — не пустий рядок, принаймні один символ
  • /^/ — все рядка
  • /thing/ — thing де-небудь в рядку
  • /^thing/ — thing на початку рядка
  • /thing$/ — thing в кінці рядка
  • /^thing$/ — рядок, що складається лише з thing
  • /thing.$/ — thing плюс будь-який символ в кінці рядка
  • /\/thing\// — /thing/ де-небудь в рядку
  • /[tT]hing/ — thing thing або де-небудь в рядку
  • /thing[0-9]/ — thing, за якою йде одна цифра
  • /thing[^0-9]/ — thing, за якою йде не цифра
  • /thing1.*thing2/ — thing1, потім будь-яка рядок, потім thing2
  • /^thing1.*thing2$/ — thing1 на початку і в кінці thing2

Щоб маніпулювати не тільки цілими фрагментами, вибираними регулярними виразами, але і їх частинами, використовуються позначені регулярні вирази: якщо конструкція \(…\) з’являється в регулярному виразі, то частина відповідного їй фрагмента доступна як \1. Допускається використання до дев’яти позначених виразів, на які посилаються \1, \2 і т. д.

Ось кілька прикладів використання позначених регулярних виразів:

  • s/\(…\)\(.*\)/\2\1/ — Помістити 3 перших символу в кінець рядка
  • /\(..*\)\1/ — Знайти рядки, які містять повторювані суміжні ланцюжка символів
  • s/^\(..*\)\.\(..*\)/\1.\\2/ — Перенести залишок рядка після першої точки на наступний рядок

Додав: htmaker, 29.03.2013 р.
(Ще не оцінили)

Завантаження…

Діліться з друзями:

См. також:


Оновлення пакетів в CentOS
Рубрика: Linux

Bash: mail: command not found
Рубрика: Linux

Виставляємо тимчасову зону в CentOS 7
Рубрика: Linux

Налаштування SELinux, включення, відключення
Рубрика: Linux, Інф. безпека

Змінюємо пароль root в MySQL 5.7
Рубрика: Linux, MySQL

Установка і настройка mSMTP на Linux
Рубрика: Linux

Установка GIT на CentOS 7
Рубрика: Linux

Як відключити IPv6 в CentOS 7?
Рубрика: Linux

Ротація логів в Linux
Рубрика: Apache, Linux