Ao usar o plug-in grep no VIM, posso procurar no diretório atual todas as ocorrências de uma string em um conjunto de arquivos, como este:
:grep Ryan *.txt
Isso gera algo como isto:
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
Se eu pressionar enter, isso me levará de volta ao meu editor. O que eu realmente quero fazer é poder abrir um desses arquivos e pular para o local onde a string foi encontrada. Existe uma maneira de fazer isso? A 1 of 3
parte me faz pensar que há uma maneira de analisar os resultados, mas não sei quais comandos estão disponíveis para mim. Alguem pode iluminar isso?
fonte
:grep
que você adicionaria a umgrep
comando executado a partir do shell. Portanto, você pode fazer uma pesquisa recursiva em todos os arquivos .txt dentro e abaixo do diretório atual com:grep -R --include=*.txt Ryan .
. Você também pode executar uma pesquisa recursiva usando o:vimgrep
comando do Vim , mas os argumentos são diferentes e raramente uso porque é mais lento que:grep
.