Curiosidades De Hackers
EXPRESIONES REGULARESLINUX

EXPRESIONES REGULARES(GREP)


Uso

Buscar salida estándar (i.e. una secuencia de texto)

$ grep [options] search_string

Busque una cadena exacta en el archivo:

$ grep [options] search_string path/to/file

Imprima líneas en myfile.txt que contengan la cadena «mellon»

$ grep 'mellon' myfile.txt

Se aceptan comodines en nombre de archivo.

Ejemplos de opciones

Opción Ejemplo Operación
-i grep -i ^DA demo.txt Olvida la sensibilidad del caso.
-w grep -w «de» demo.txt Busca solo la palabra completa
-A grep -A 3 error ‘Exception’.log Mostrar 3 líneas después de la cadena correspondiente
-B grep -B 4 Error de ‘excepción’.log Mostrar 4 líneas antes de hacer coincidir la cadena
-C grep -C 5 ‘Exception’ error.log Mostrar 5 líneas alrededor de la cadena correspondiente
-r grep -r ‘cheatsheets.zip’ /var/log/nginx/ Búsqueda recursiva (dentro de los subdirs)
-v grep -v ‘advertencia’ /var/log/syslog Devuelva todas las líneas que no coincidan con el patrón
-e grep -e ‘^al’ nombre de archivo Usa regex (líneas que comienzan con ‘al’)
-E grep -E ‘ja (s \| cks) on’ nombre de archivo Regex extendido (líneas que contienen jason o jackson)
-c grep -c ‘error’ /var/log/syslog Cuenta el número de coincidencias
-l grep -l ‘robot’ /var/log/* Imprima el nombre del archivo(s) de coincidencias
-o grep -o search_string filename Solo muestra la parte correspondiente de la cadena
-n grep -n «go» demo.txt Muestra los números de línea de los partidos.

Expresiones regulares de Grep

Consulte la versión completa de la hoja de trucos de regex para conocer los requisitos más complejos.

Comodines

. Cualquier personaje.
? Opcional y solo puede ocurrir una vez.
* Opcional y puede ocurrir más de una vez.
+ Requerido y puede ocurrir más de una vez.

Cuantificadores

{n} El elemento anterior aparece exactamente n veces.
{n,} El elemento anterior aparece n veces o más.
{,m} El elemento anterior aparece n veces como máximo.
{n,m} El elemento anterior aparece entre n y m veces.

POSIX

[:alpha:] Cualquier letra minúscula y mayúscula.
[:digit:] Cualquier número.
[:alnum:] Cualquier letra o dígito en minúscula y mayúscula.
[:space:] Cualquier espacio en blanco.

Carácter

[A-Za-z] Cualquier letra minúscula y mayúscula.
[0-9] Cualquier número.
[0-9A-Za-z] Cualquier letra o dígito en minúscula y mayúscula.

Posición

^ Comienzo de la línea.
$ Fin de la línea.
^$ Línea vacía.
\< Comienzo de la palabra.
\> Fin de la palabra.