Cuando uso el complemento grep para VIM, puedo buscar en el directorio actual todas las apariciones de una cadena dentro de un conjunto de archivos, como este:
:grep Ryan *.txt
Esto genera algo como esto:
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
Si presiono enter, solo me lleva de vuelta a mi editor. Lo que realmente quiero hacer es poder abrir uno de esos archivos y saltar al lugar donde se encontró la cadena. ¿Hay alguna forma de hacer esto? La 1 of 3
parte me hace pensar que hay una forma de tabular los resultados, pero no sé qué comandos están disponibles para mí. ¿Alguien puede arrojar algo de luz sobre esto?
fuente
:grep
que agregaría a ungrep
comando ejecutado desde el shell. Por lo tanto, puede hacer una búsqueda recursiva a través de todos los archivos .txt en y debajo del directorio actual con:grep -R --include=*.txt Ryan .
. También puede realizar una búsqueda recursiva utilizando el:vimgrep
comando de Vim , pero los argumentos son diferentes y rara vez lo uso porque es más lento que:grep
.