← Volver al listado de tecnologías
Bandit Nivel 7→8 - Grep y Búsqueda de Texto
Bandit Nivel 7→8 - Grep y Búsqueda de Texto
Objetivo
La contraseña está en el archivo data.txt junto a la palabra “millionth”.
Teoría: El Comando grep
¿Qué es grep?
grep (Global Regular Expression Print) busca patrones de texto en archivos. Es una de las herramientas más poderosas de Linux.
grep "patrón" archivo
Opciones Comunes
| Opción | Descripción |
|---|---|
-i | Ignora mayúsculas/minúsculas |
-n | Muestra número de línea |
-c | Cuenta coincidencias |
-v | Invierte (líneas que NO coinciden) |
-r | Búsqueda recursiva en directorios |
-l | Solo muestra nombres de archivo |
-w | Coincide palabras completas |
-A n | Muestra n líneas después |
-B n | Muestra n líneas antes |
-C n | Muestra n líneas antes y después |
Solución
grep "millionth" data.txt
Salida:
millionth [CONTRASEÑA]
Ejemplos Prácticos de grep
Búsqueda básica
grep "error" /var/log/syslog
Ignorar mayúsculas
grep -i "ERROR" archivo.log
Con número de línea
grep -n "TODO" codigo.py
Buscar en múltiples archivos
grep "función" *.py
Búsqueda recursiva
grep -r "password" /etc/
Contar ocurrencias
grep -c "error" logs.txt
Invertir (lo que NO coincide)
grep -v "DEBUG" app.log
Expresiones Regulares Básicas
| Patrón | Significado |
|---|---|
. | Cualquier carácter |
^ | Inicio de línea |
$ | Fin de línea |
* | Cero o más del anterior |
+ | Uno o más del anterior |
[abc] | Uno de los caracteres |
[^abc] | Ninguno de estos |
grep "^Error" log.txt # Líneas que empiezan con Error
grep "fin$" archivo.txt # Líneas que terminan con fin
grep "err.*" log.txt # err seguido de cualquier cosa
Pipes con grep
grep se combina frecuentemente con otros comandos:
# Buscar en la salida de otro comando
cat archivo.txt | grep "patrón"
ps aux | grep "python"
history | grep "git"
# Encadenar greps
cat log.txt | grep "error" | grep -v "timeout"
Alternativas a grep
| Comando | Descripción |
|---|---|
egrep | grep con expresiones regulares extendidas |
fgrep | grep para patrones fijos (sin regex) |
rg | ripgrep - más rápido, moderno |
Comandos Aprendidos
| Comando | Descripción |
|---|---|
grep "patrón" archivo | Buscar texto en archivo |
grep -i | Ignorar mayúsculas |
grep -n | Mostrar número de línea |
grep -v | Invertir búsqueda |
Conexión al Siguiente Nivel
ssh [email protected] -p 2220