2021-04-20 16:03:14 +01:00
# grep
2023-12-29 13:17:58 +00:00
> Encuentra patrones en archivos usando expresiones regulares.
2021-10-01 19:28:01 +01:00
> Más información: <https://www.gnu.org/software/grep/manual/grep.html>.
2021-04-20 16:03:14 +01:00
- Busca un patrón dentro de un archivo:
2023-12-29 13:17:58 +00:00
`grep "{{patrón_de_busqueda}}" {{ruta/al/archivo}}`
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
- Busca una cadena exacta (desactiva las expresiones regulares):
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
`grep --fixed-strings "{{cadena_exacta}}" {{ruta/al/archivo}}`
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
- Busca un patrón en todos los archivos de forma recursiva en un directorio, mostrando los números de línea de las coincidencias, ignorando los archivos binarios:
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
`grep --recursive --line-number --binary-files={{sin-parejamiento}} "{{patrón_de_búsqueda}}" {{ruta/al/directorio}}`
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
- Utiliza expresiones regulares extendidas (admite `?` , `+` , `{}` , `()` y `|` ), sin distinguir entre mayúsculas y minúsculas:
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
`grep --extended-regexp --ignore-case " {{patrón_de_búsqueda}}" {{ruta/al/archivo}}`
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
- Imprime 3 líneas de contexto alrededor, antes o después de cada coincidencia:
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
`grep --{{context|before-context|after-context}}={{3}} "{{patrón_de_búsqueda}}" {{ruta/al/archivo}}`
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
- Imprime el nombre del archivo y el número de línea de cada coincidencia con salida en color:
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
`grep --with-filename --line-number --color=always "{{patrón_de_búsqueda}}" {{ruta/al/archivo}}`
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
- Busca líneas que coincidan con un patrón e imprime sólo el texto coincidente:
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
`grep --only-matching "{{patrón_de_búsqueda}}" {{ruta/al/archivo}}`
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
- Busca `stdin` en las líneas que no coincidan con un patrón:
2021-04-20 16:03:14 +01:00
2023-12-29 13:17:58 +00:00
`cat {{ruta/al/archivo}} | grep --invert-match "{{patrón_de_busqueda}}"`