При использовании плагина grep для VIM я могу искать в текущем каталоге все вхождения строки в наборе файлов, например так:
:grep Ryan *.txt
Это выводит что-то вроде этого:
file1.txt:3:Ryan was here
file2.txt:10:Ryan likes VIM
file3.txt:5:superuser.com is a fav of Ryan
(1 of 3): Ryan was here
Press ENTER or type command to continue
Если я нажимаю ввод, он просто возвращает меня в мой редактор. Что я действительно хочу сделать, так это иметь возможность открыть один из этих файлов и перейти к месту, где была найдена строка. Есть ли способ сделать это? Эта 1 of 3
часть заставляет меня думать, что есть способ просмотреть результаты, но я не знаю, какие команды мне доступны. Кто-нибудь может пролить свет на это?
источник
:grep
которые вы добавляете вgrep
команду, выполняемую из оболочки. Таким образом, вы можете выполнить рекурсивный поиск по всем файлам .txt внутри и ниже текущего каталога с помощью:grep -R --include=*.txt Ryan .
. Вы также можете выполнить рекурсивный поиск с помощью команды Vim:vimgrep
, но аргументы отличаются, и я редко использую, потому что это медленнее, чем:grep
.