Yvision.kz
kk
Разное
Разное
399 773 постов42 подписчика
Всяко-разно
-1
03:02, 31 декабря 2015

Текстовый редактор vi

Blog post image

Я иногда редактирую файлы в этом редакторе. Поэтому решил сделать маленькую записку, по работе с ним. Что примечательно, этот редактор, доступен во всех Linux дистрибутивах. Его не надо устанавливать, как например nano. Да он не удобен, но он есть, и если у вас нет интернета, этот редактор ваше единственное спасение. Именно он помогает мне отредактировать файлы сетевых настроек, когда на сервере еще нет интернета. В новых версиях Linux при вводе команды vi, используется улучшенная версия vi по имени vim.

 

Команда открытия файла:

vi имя файла

 
  • После открытия файла через команду vi <имя файла>, требуется активировать режим редактирования (ввода), это нужно чтобы вносить текст в файл. Активирование режима ввода осуществляется с помощью нажатия клавиши "INS". Далее редактор перейдет с режима просмотра в состояние редактирования. Потом от вас потребуется вводить новые данные в файл. Операция копирования теста с блога в открытый файл на Linux системе, делается по следующей инструкции: выделите текст мышкой и скопируйте его путем нажатия комбинации клавиш "CTRL"+"C", в результате происходит копирования текста в буфер обмена. Далее идет вставка текста в консоль, нажмите "INS" - это позволит перейти в режим редактирования, и далее произведите операцию вставки текста из буфера обмена нажатием комбинации "SHIFT"+"INS".
 
  • По окончанию ввода текста, нажмите кнопку "ESC". Тем самым вы вернетесь в режим просмотра.
 
  • Самое главное - это сохранение файла, чтобы ваш труд не пропал. В текстовом редакторе vi данную операцию возможно осуществить двумя способами, первый вариант - нажмите и держите кнопку Shift, теперь когда кнопка Shift удержана, не отпуская ее нажмите по букве "z" - два раза. Обязательно проверьте "Caps Lock" - он должен быть выключен. Второй вариант - после выхода из режима редактирования "ESC", введите ":w!" и нажмите "ENTER".
 
  • Поиск текста в редакторе vi делается путем нажатия в режиме просмотра кнопки "/", далее вводится текст который нужно найти и нажимается "ENTER".
 
  • Выход без сохранения текста - если вдруг вы неправильно ввели текст, можно выйти из редактора без сохранения введенных данных. Для этого нажмите "ESC" и введите ":q!", потом нажмите ENTER.
 
  • Как скопировать выделенный текст - если вам вдруг понадобилось скопировать несколько строк, или может удалить их. Воспользуйтесь операцией выделения текст нажав v, далее после выделения нужного текста, нажмите кнопку копирования y. Все, теперь ваш текст скопирован в буфер обмена. Теперь когда текст скопирован, поставьте курсов в место куда требуется вставить скопированный текст и нажмите кнопку p
 
  • Как удалить выделенный текст - если вам нужно удалить определенный текст, выделите его с помощью нажатия кнопки v, после выделения нажмите кнопку удаления d
 
  • Замену текста в файле можно сделать через две команды

:%s/<что>/<чем>/g      - заменить все совпадения в файле

:%s/<что>/<чем>/gc    -  заменить все совпадения в файле с подтверждением

Например в режиме просмотра:

:%s/Уродина/Красавица/g

В этом примере vi находит все слова Уродина, и меняет их на Красавица.

Можно найти текст в файлах и заменить:

find . -type f -name '*.php' -exec sed -i -r 's/super/duper/g' {} \;

Здесь в примере super меняется на duper.

  • Откат действий - если вам потребовалось вернуть изначальное состояние текста, нажмите кнопку u
 
  • Вернуть ввод - если наоборот потребовалось вернуть введенное что было отменено, нажмите CTRL+r
 
  • Выделить текст - нажмите v
 
  • Удаление строки, в режиме просмотра нажмите  "dd"
  • Показать нумерацию строк, в режиме просмотра введите :set number
  • Копировать строку, в режиме просмотра введите "yy" чтобы скопировать, поставьте курсов в нужное место и нажмите p
  • Вставить текст из буфера обмена, нажмите  SHIFT+INS

И еще у редактора vi есть очень интересная возможность, например вы знаете заранее что в файле нужно заменить один текст на другой. Эту операцию можно провернуть всего одной командой, запустив vi c параметрами в командной строке. Это бывает очень удобно, бородатые дяди это знают.

 

Ссылки:

Справочник по Vi

Справочник по командам vi

Небольшой справочник по vim

Книга: просто о vim

Vim: необходимый минимум знаний

-1
1257
2