# grep

> Encuentra patrones en archivos usando expresiones regulares.
> Más información: <https://www.gnu.org/software/grep/manual/grep.html>.

- Busca un patrón en un archivo:

`grep "{{patrón_de_búsqueda}}" {{ruta/al/archivo}}`

- Busca una cadena de caracteres específica (la cadena no será interpretada como una expresión regular):

`grep {{-F|--fixed-strings}} "{{cadena_exacta}}" {{ruta/al/archivo}}`

- Busca un patrón en todos los archivos de forma recursiva en un directorio, mostrando los números de línea de las coincidencias e ignorando los archivos binarios:

`grep {{-r|--recursive}} {{-n|--line-number}} --binary-files {{without-match}} "{{patrón_de_búsqueda}}" {{ruta/al/directorio}}`

- Utiliza expresiones regulares extendidas (los metacaracteres `?`, `+`, `{}`, `()` y `|` no requieren de una barra inversa), sin distinguir entre mayúsculas y minúsculas:

`grep {{-E|--extended-regexp}} {{-i|--ignore-case}} "{{patrón_de_búsqueda}}" {{ruta/al/archivo}}`

- Imprime 3 líneas alrededor, antes o después de cada coincidencia:

`grep --{{context|before-context|after-context}} {{3}} "{{patrón_de_búsqueda}}" {{ruta/al/archivo}}`

- Imprime con colores el nombre del archivo y el número de línea de cada coincidencia:

`grep {{-H|--with-filename}} {{-n|--line-number}} --color=always "{{patrón_de_búsqueda}}" {{ruta/al/archivo}}`

- Busca líneas que coincidan con un patrón e imprime solo el texto coincidente:

`grep {{-o|--only-matching}} "{{patrón_de_búsqueda}}" {{ruta/al/archivo}}`

- Busca líneas en`stdin` que no coincidan con el patrón:

`cat {{ruta/al/archivo}} | grep {{-v|--invert-match}} "{{patrón_de_busqueda}}"`
