Инициализация поиска в vi перед запуском

Я использую небольшую программу, которую я написал, которая принимает шаблон регулярного выражения в качестве параметра и ищет файлы 2000+. Файлы находятся в иерархии каталогов.

Шаблон может быть в нескольких файлах и несколько раз в любом файле. После поиска имен файлов и строк, на которых происходит шаблон, программа вызывает vi с +line для первого номера строки и всех найденных им файлов.

Теперь все работает, но в одно время я попытался указать +line для каждого файла ( vi +2 x1 +5 x2 ), но это получает курсор в строке 5 в x1 и строке 1 в x2 , а не в том, что я хотел, поэтому Я отбросил эту идею.

Шаблоны часто сложны, и я не хочу вводить их дважды, поэтому теперь я иногда использую copy и paste для поиска следующей строки в vi . Что было бы здорово, это настроить историю поиска vi с помощью шаблона, затем я мог бы использовать / + + Return , без повторного набора или копирования / вставки, чтобы найти все шаблоны. Затем я могу использовать :n! для перехода к следующему файлу и продолжения использования шаблона.

Похоже, что шаблон хранится .viminfo в моем каталоге. Могу ли я просто обновить этот файл перед запуском vi или есть ли какая-то библиотека или утилита командной строки?

One Solution collect form web for “Инициализация поиска в vi перед запуском”

Нет необходимости ~/.viminfo файл ~/.viminfo .

Когда вы используете vim вы можете использовать параметр командной строки +/pattern чтобы получить курсор на строке шаблона. После этого вы можете использовать n, чтобы перейти к следующим вхождениям (если не в начале строки, это будет первым в противном случае второе вхождение).

На странице руководства говорится, что курсор будет в первом вхождении шаблона, но по моему опыту он находится на первом символе строки с этим шаблоном. На странице vim man :

 +/{pat} For the first file the cursor will be positioned on the first occurrence of {pat}. See ":help search-pattern" for the available search patterns. 
  • Plain vi (not vim): не удается удалить строку в режиме вставки: требуется ли это поведение POSIX?
  • Как удалить все строки в файле с помощью vi?
  • текстовый файл с удаленным запросом, связанный с экземпляром vi
  • Запись перед курсором
  • Найдите любую строку в VI, которая имеет что-то кроме ATCG
  • Поиск и замена управляющих символов (^ @, ^ M, ^ I ...) в vi
  • Есть ли у традиционных vi (not vim) поддержка больших файлов?
  • Как открыть файл в последней закрытой позиции в VI
  • Как я могу переключить 2 символа в vi?
  • Перенаправить вывод команды VI в файл
  • Как прокомментировать строку на основе слова, с которого оно начинается?
  • Interesting Posts
    Linux и Unix - лучшая ОС в мире.