Сергей Маликов
19.10.2019
11816

Редактор vi: основные команды

По умолчанию в CentOS используется редактор vi. Посмотреть какой редактор в данный момент установлен как редактор по умолчанию можно командой: Установить vi редактором по умолчанию: Для определенного пользователя установить редактор по умолчанию можно в профиле Открыть файл с помощью vi можно командой: vi file.conf          где file.conf – существующий файл или файл, который будет создан При […]

Редактор vi

По умолчанию в CentOS используется редактор vi.

Посмотреть какой редактор в данный момент установлен как редактор по умолчанию можно командой:

echo $EDITOR

Установить vi редактором по умолчанию:

export EDITOR=vi
Просмотр и установка редактора по умолчанию
Просмотр и установка редактора по умолчанию

Для определенного пользователя установить редактор по умолчанию можно в профиле

cat <<EOF >>~/.bash_profile
export VISUAL="vi"
export EDITOR="vi"
EOF
Установка редактора по умолчанию в профиле
Установка редактора по умолчанию в профиле

Открыть файл с помощью vi можно командой:

vi file.conf          где file.conf

– существующий файл или файл, который будет создан

При запуске vi находится в командном режиме, чтобы перевести vi в режим ввода, необходимо нажать на клавиатуре клавишу i.

Чтобы установить графический интерфейс для vim нужно ввести:  yum install -y vim-X11. Запустить графическую версию редактора можно командами: gvim &lt;имя файла> или vimx -g &lt;имя файла> vimx без опции –g запустит консольную версию vim.

Также, можно перейти сразу в какую-либо строку файла. Например, перейти в 95 строку файла full, существующего в текущем каталоге, можно командой:

vi +95 full

Чтобы включить подсветку номеров строк в vi нажмите Esc и наберите:

:set nu
Vi: включить подсветку номеров строк
Vi: включить подсветку номеров строк

Для выключения подсветки номеров строк

:set nu! 

Перейти к первому вхождению слова «error»

vi +/disconnected full
Vi: открыть файл full и перейти к первому вхождению слова disconnected
Vi: открыть файл full и перейти к первому вхождению слова disconnected

Чтобы записать постоянные настройки для текущего пользователя нужно внести изменения в файл  ~/.vimrc. Например, чтобы номера строк подсвечивались постоянно, в файл нужно добавить “set number” или “set nu”. Чтобы переключать режим включения/выключения отображения номеров строк с помощью Ctrl +N, переходить на строки по ее номеру, набрав номер строки Enter, в файл нужно добавить:

:nmap <C-N> :install invnumber <CR>

Чтобы записать настройки и сделать их постоянными для всех пользователей директивы нужно добавить в /etc/vimrc.

Находясь в режиме команд можно переходить по строкам/начало/конец файла:

G – перейти в конец файла
3gg или 3G – перейти на третью строку файла (сначала)
gg – перейти в начало файла.

В vi, также как и в sed, можно производить замены. Чтобы заменить в текстовом файле одну строку на другую, например, в открытом файле заменить  1010 на 1011.

:%s/1010/1011/g

Также, можно указать определенный интервал, в котором будет проходить поиск.

:4,15s/1010/1011/g

— заменить только в определенном интервале (с 4 по 15 строку).

:4,15s/^/\t/

— сделать отступ  в определенном интервале (с 4 по 15 строку).
Навигация.
h Курсор влево
J  Курсор вниз
K Курсор вверх
l или Курсор вправо
w следующее слово
W следующее слово разделенное пробелом
b на слово назад
B начало слова разделенного пробелом
e конец слова
E конец слова разделенного пробелом
( на предложение назад
) на предложение вперед
{ на абзац назад
} на абзац вперед
0 в начало строки
$ в конец строки
1G в начало файла
G в конец файла
:n на n-ю строку файла
f<символ> вперед к символу
F<символ> назад к символу
H верх экрана
M середина экрана
L нижняя часть экрана
% соответствующая скобка
gg начало документа
Режимы и элементы управления.
Командный режим – ESC для входа (командам предшествует 🙂
Режим вставки — Вход в режим при вставке, внесении изменений
Запуск VI (командная строка)
vi <имя_файла>  редактировать имя_файла
vi-r <имя_файла> изменить последнюю версию имя_файла после сбоя
vi +n <имя_файла> изменить имя_файла (при открытии – переход к строке n)
vi + <имя_файла> изменить имя_файла (при открытии – переход в конец файла)
vi + /str <имя_файла> редактировать имя файла (при открытии – переход к первому вхождению str)
В режиме вставки (перед вводом следующих команд должна быть нажата клавиша ESC)
:w сохранить
😡 сохранить и выйти
:wq записать изменения и выйти
:q выход, если изменения не внесены
:q! выйти и отменить все изменения
Вставка текста
i вставить перед курсором
a вставить после курсора
I вставить перед строкой
A добавить после строки
o добавить новую строку после текущей строки
O добавить новую строку перед текущей строкой
r перезаписать один символ
R перезаписать несколько символов
::r < file> читает файл и вставляет его после этой строки
p поставить после позиции или строки
P поставить перед позицией или строкой
С перезаписать всю строку
Удаление текста
x удалить символ справа от курсора
X удалить символ слева от курсора
D удалить остаток строки
dd или:d удалить текущую строку
ndw удалить следующие n слов
ndb удалить предыдущие n слов
ndd удалить n строк, начиная с текущей
:x,уd удалить строки x через y
:r <файл> читает файл и вставляет его после этой строки
d{нав_кмнд} перезаписать много символов
Поиск
/string поиск строки по направлению вниз
?string поиск строки вверх
n перейти к следующему совпадению
N перейти к предыдущему совпадению
:set  ic игнорировать регистр при поиске
:set noic поиск с учетом регистра
:set nu включить подсветку номеров строк
:x, yg/str поиск для строки str от строки x до строки y
:g/str/cmd запустить cmd на строках, содержащих str
* поиск следующего экземпляра текущего слова
# поиск последнего экземпляра текущего слова
Замена
:s/pt/str/flag заменить подходящее под шаблон на строку
Флаги
g замените все вхождения шаблона
c подтвердить замену
& повторить последнюю :s команду
Другое
U отменить последнее изменение
J соединить строки
nJ присоединиться к следующей строки
. повторить последнюю команду
U отменить все изменения в строке
:N открыть разделенный экран
V переход в визуальный режим
ctrl + c выйти из режима вставки
Подписаться
Уведомление о
guest
0 Комментарий
Inline Feedbacks
View all comments

Остались вопросы?

Я - Компаниец Никита, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.

VoIP оборудование

ближайшие курсы

ближайшие Вебинары

ONLINE

10 доводов в пользу Asterisk

Распространяется бесплатно.

Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.

Безопасен в использовании.

Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.

Надежен в эксплуатации.

Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.

Гибкий в настройке.

Зачастую возможности Asterisk ограничивает только фантазия пользователя. Ни один конструктор шаблонов не сравнится с Asterisk по гибкости настройки. Это позволяет решать с помощью Asterisk любые бизнес задачи, даже те, в которых выбор в его пользу не кажется изначально очевидным.

Имеет огромный функционал.

Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.

Интегрируется с любыми системами.

То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.

Позволяет телефонизировать офис за считанные часы.

В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.

Отличная масштабируемость.

Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.

Повышает управляемость бизнеса.

Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.

Снижает расходы на связь.

Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.