En el siguiente artículo vamos a ver distintas formas de como buscar archivos y como reportar la información de los mismos. Utilizaremos distintas herramientas y diferentes formas de representación de la data.
La primera que vamos a ver para buscar archivos en linux es locate
. Esta herramienta nos permite realizar búsquedas de archivos usando distintos
parámetros. Posteriormente, podremos filtrar sus resultados empleando otras herramientas como xargs
, wc
, etc.
La sintaxis es muy simple, el comando seguido del archivo que vamos a buscar:
locate [archivo]
Ejemplos:
locate home
locate users
Podemos buscar por extensiones:
locate [.extensión]
Ejemplos:
locate .jpg
locate .txt
Vamos a ver como listar por Categorías
los Scripts de un programa, en este caso, como ejemplo, usaremos Nmap
. Para ello vamos a usar la herramienta
locate
para buscar por extensiones, ya que todos los scripts de Nmap contienen la extensión .nse
.
locate .nse
Ahora, concatenando un xargs
, vamos a ejecutar un grep
y le especificamos el argumento "categories"
, de esta manera xargs nos listará las categorias
correspondientes a cada script encontrado con locate
.
locate .nse | xargs grep "categories"
grep "categories"
: Exporta las categorías de los archivos listados.Vemos como a la derecha nos reporta entre corchetes las categorías
a las que corresponde cada script de Nmap.
Ahora vamos a quitar todo el ruido de fondo y únicamente vamos a filtrar los tipos de categorías que existen. Para ello vamos a usar otra vez el
comando grep
para crear una expresión regular -oP
que nos permita capturar la data ".*?"
que existe entre el doble comillado.
locate .nse | xargs grep "categories" | grep -oP '".*?"'
-oP '".*?"'
: Exporta la data
que hay entre el comillado de las categorías listadas. -oP ''
.*?
: Es como se representa la data
.Vemos como ya nos reporta únicamente las categorías, pero algunas se muestran repetidas, para evitar esto, podemos utilizar la herramienta sort
seguida de
la opción -u
:
locate .nse | xargs grep "categories" | grep -oP '".*?"' | sort -u
-u
: Muestra únicamente una palabra de cada grupo repetido.Vemos como ya nos muestra las categorías de una forma más limpia y sin repeticiones.