Todo sobre Apple, Android, Juegos Apks y Sitios de Peliculas

Cómo buscar con “grep” usando cadenas en un archivo

Grep es una herramienta increíble para buscar en archivos de registro y extraer información útil, pero ¿qué sucede si desea buscar un archivo de registro utilizando una lista gigante de palabras clave de otro archivo? Afortunadamente, también tiene esa característica incorporada.

Esto me sucedió cuando quise obtener una lista de todas las URL solicitadas por un gran bloque de IP que estaba atacando abusivamente nuestro servidor. Después de identificar y crear la lista de mil IP, necesitaba extraer las URL del archivo de registro principal para identificar los recursos más solicitados.

Para hacer esto querrás usar el argumento -f, que te permite especificar un archivo para la lista de patrones a buscar.

-f FILE, --file=FILE

Obtain patterns from FILE, one per line. The empty file

contains zero patterns, and therefore matches nothing.

(-f is specified by POSIX.)

Suponiendo que su conjunto de palabras clave o cadenas esté en un archivo llamado “cadenas de búsqueda”, puede usar el argumento en la línea de comando como en el siguiente ejemplo. Dado que esta búsqueda generará una gran cantidad de datos, la parte “> salida.txt” del comando envía el resultado del comando a un archivo llamado salida.txt que se puede analizar por separado.

grep -f searchstrings filetosearch > output.txt

El único problema con el uso del argumento -f es que grep intentará interpretar las palabras clave como si fueran patrones, lo que puede ralentizarlo al analizar un archivo extremadamente grande. Por lo tanto, también puede especificar el parámetro -F, que le indica a grep que solo haga coincidencias exactas con las cadenas.

 -F, --fixed-strings

Interpret PATTERN as a list of fixed strings, separated by

newlines, any of which is to be matched. (-F is specified by

POSIX.)

Entonces el comando completo terminaría siendo más parecido a esto:

grep -F -f searchstrings filetosearch > output.txt

Grep es una forma ridĂ­culamente poderosa de buscar archivos de registro, por lo que valdrĂ­a la pena dedicar tiempo a revisar el archivo man.