Необходимость научиться пользоваться текстовыми редакторами в Linux неоспорима. Каждый системный администратор и инженер ежедневно имеет дело с файлами конфигурации (обычным текстом), и в большинстве случаев это делается исключительно с помощью одного или нескольких инструментов из интерфейса командной строки (например, нано, vim, или emacs).
Пока нано возможно больше подходит для новых пользователей, vim или emacs являются инструментом выбора для более опытных пользователей из-за его расширенных возможностей.
Но есть еще одна причина, по которой изучение использования одного из этих текстовых редакторов должно быть для вас главным приоритетом: вы можете либо столкнуться с сервером, работающим только с CLI, либо запустить в проблему с диспетчером рабочего стола на вашем сервере Linux или рабочем столе с графическим интерфейсом пользователя, и единственным ресурсом для его изучения и редактирования файлов конфигурации является команда линия.
Между этой статьей и следующей из этой серии из двух статей мы рассмотрим
15 советов и хитростей для улучшения вашего vim навыки. Предполагается, что вы уже знакомы с этим текстовым редактором. Если нет, сделайте себе одолжение и ознакомьтесь с vim, прежде чем продолжить: вы можете обратиться к Как использовать vi / vim в качестве полнотекстового редактора для очень подробного руководства по запуску с vim.Часть 2: 8 интересных советов и приемов редактора Vi / Vim
После запуска vim нажмите F1 или используйте :час в бывший режим для входа в онлайн-справку. Вы можете перейти к определенному разделу или теме, поместив на него курсор и нажав Ctrl +]
(Ctrl, затем закрывающая квадратная скобка).
После того, как вы закончите, нажмите Ctrl + t
чтобы вернуться к предыдущему экрану. Кроме того, вы можете найти конкретную тему или команду с помощью :час
.
Например,
: h x
отобразит справку для Икс(Удалить) команда:
и
: h заменить.
вызовет справку о заменять команда (наш последний совет в этой статье).
Если вы обнаружите, что редактируете файл размером больше одного экрана, вы оцените функциональность, предоставляемую Метки. Вы можете думать о метке в vim как о закладке - как только вы разместите ее где-нибудь, вы сможете быстро и легко вернуться к ней. Предположим, вы редактируете 300 слов конфигурационный файл и почему-то нужно многократно переключаться между строками 30 и 150 Например.
Сначала перейдите к строке #30 введя :30 в бывший режим, затем вернитесь в командный режим и нажмите ма (м, потом а), чтобы создать отметку с именем «А» в очереди 30.
Затем перейдите к строке 250 (с :250 в режиме ex) и нажмите `а
(обратная кавычка, затем а) вернуться к отметке а в очереди 30. Вы можете использовать строчные и прописные буквы для обозначения меток в vim (теперь повторите процесс, чтобы создать метку с именем А в очереди #250).
Вы можете просматривать свои отметки с помощью
: марки aA.
Как видите, на каждую метку ссылается определенная позиция строки / столбца в файле, а не только строка.
Предположим, вы редактируете сценарий оболочки и понимаете, что предыдущий разработчик не очень хорошо разбирался в отступах. Давайте посмотрим, как вы можете исправить это с помощью пары команд vim.
Сначала выберите визуальный блок, поместив курсор в начало блока, а затем нажав Ctrl + v (Ctrl, потом v).
Затем нажмите кнопку .
(точка), чтобы повторить любой отступ. Выбранный блок переместится вправо или влево одним нажатием клавиши.
Еще один классический пример использования точка команда используется, когда вам нужно удалить серию слов: поместите курсор на первое слово, которое вы хотите удалить, затем нажмите dw. Чтобы продолжить удаление следующих слов, просто нажмите .
(короче и проще, чем повторять dw несколько раз).
Если ваша раскладка клавиатуры не позволяет легко вставлять специальные символы Юникода в файл, или если вы обнаружите вы перед сервером с другими языковыми настройками, чем тот, к которому вы привыкли, этот трюк поможет удобно.
Для этого нажмите Ctrl + v в режиме вставки, за которым следует буква ты и шестнадцатеричный числовой код символа, который вы хотите вставить. Вы можете проверить Диаграммы Unicode для списка специальных символов и соответствующих им цифровых кодов.
Например,
Ctrl + v, за которым следует | возвращается |
u0040 | @ |
u00B5 | μ |
u20AC | € |
Бывают случаи, когда вам нужно будет вставить вывод внешних команд непосредственно в файл, редактируемый с помощью vim. Например, я часто создаю переменную с именем DIR в моих сценариях для хранения абсолютного пути к каталогу, в котором находится сценарий, чтобы использовать его позже в сценарии. Для этого я использую:
:р! pwd
в бывший режим. Таким образом, вставляется текущий рабочий каталог.
Другой пример: если вам необходимо использовать шлюз по умолчанию где-то в скрипте, вы можете легко вставить его в текущий файл, не выходя из vim, следующим образом:
:! r ip route show | grep default | вырезать -f 3 -d ""
Если вам нужно добавить содержимое отдельного файла в тот, который вы редактируете в данный момент, синтаксис аналогичен предыдущему совету. Просто опустите восклицательный знак, и все готово.
Например, чтобы скопировать содержимое /etc/passwd:
: r / etc / passwd.
Этот совет может оказаться полезным, если вам нужно изменить файлы конфигурации, но вы хотите сохранить исходные, чтобы вернуться к «заводские настройки" так сказать.
Правдивая история. Однажды во время экзамена меня попросили открыть большой текстовый файл, содержащий случайные данные. Поставленная задача заключалась в замене каждого вхождения слова Глобус с земля (да, я до сих пор помню точные слова). Для тех, кто знаком с sed, это вызовет звонок - в бывший режим, введите:
:% s / старый / новый / g.
куда Старый шаблон для поиска и новый это строка, которая его заменит.
В описанном выше случае я использовал:
:% s / Глобус / Земля / g.
чтобы выполнить свою работу.
Так что насчет того, чтобы получать подсказки перед заменой? Легко. Просто добавьте c в конце вышеуказанной команды, как показано ниже:
:% s / старый / новый / gc.
Вхождения шаблона будут выделены, и вас спросят, хотите ли вы заменить его новой строкой:
:% s / gacanepa / me / gc.
куда
В этой статье мы начали обзор некоторых советы и хитрости vim чтобы добавить к своим навыкам редактирования текста. Вы, вероятно, подумаете о нескольких других, поэтому, пожалуйста, поделитесь ими, используя форму ниже, и я рассмотрю их в следующей и заключительной статье этой серии vim. С нетерпением жду Вашего ответа.