grep-usage-featured

¿Qué es GREP en Linux y cómo se usa?

Grep es un pequeño programa de Unix para encontrar patrones coincidentes. Iniciado como un programa de Unix, se puede encontrar en Linux, así como en Mac y BSD. Puede leer casi cualquier texto, lo que significa que puede leer la entrada de otros comandos, o puede abrir y buscar archivos directamente. Grep es increíblemente útil, especialmente para buscar directorios desde la línea de comandos.

Grep ls

Con eso, ¿por qué no probar uno de los usos más comunes de Grep, encontrar un archivo en un directorio? Busque en su carpeta «~/Descargas» cualquier imagen «jpg».

ls ~/Downloads | grep .jpg

Grep los enumerará a todos y resaltará la parte «.jpg», ya que es lo que buscó.

grep grep en este artículo

Canaliza la salida (con el comando «|») de casi cualquier comando en grep. Si tiene un archivo de texto sin formato por ahí, cat sáquelo y canalice el resultado a Grep para encontrar una palabra específica.

Grep imprimirá cualquier línea en el archivo que contenga la palabra que le dijiste que buscara.

olvida el caso

amigo, escuché que te gusta grep

Los sistemas similares a Unix distinguen entre mayúsculas y minúsculas, lo que significa que «Ubuntu» es completamente diferente a «ubuntu». Eso puede ser un dolor al buscar algo. Grep tiene una bandera para eliminar el problema. Añade el -i marca a su búsqueda, y Grep ignorará mayúsculas y minúsculas.

ls ~/Downloads | grep -i Ubuntu

Buscar en un archivo

grep en un archivo

No sería tan conveniente necesitar cat cada vez que quería buscar un archivo. En realidad, no lo haces. Grep puede buscar archivos por sí mismo. Pásale la ruta al archivo y Grep hará el resto.

grep -i word /path/to/file.txt

Búsquedas recursivas

Grep recursivo

Grep puede buscar en más de un archivo o directorio al mismo tiempo. Tenga cuidado, si está buscando nombres de archivos, Grep también buscará archivos de forma predeterminada. los -r flag le dice a Grep que busque recursivamente.

ls ~/Downloads | grep -r .deb

También puedes combinar esto con otras banderas. Es posible que desee incluir el -I marcar al hacer búsquedas recursivas para evitar que Grep busque archivos binarios.

ls ~/Downloads | grep -iIr .deb

Encuentra el opuesto

También puedes decirle a Grep que busque todo no que contiene el patrón especificado. Esto sería bueno en los casos en que necesita encontrar un error o tiene un directorio con muchos archivos de uno o dos tipos.

grep -rv '192.168.1.110' /etc/nginx

Palabras y líneas

También podría ser útil decirle a Grep que busque palabras o líneas completas, en lugar de cualquier cosa que contenga un cierto patrón. Imagine que está buscando una cadena de caracteres que es común como parte de una palabra, pero necesita que estén separados. Por ejemplo, la palabra «eso». Obviamente, no habría muchas veces que Realmente quiero buscar un patrón como «eso», pero prueba el punto.

cat textfile.txt | grep -w it

En lugar de imprimir cada palabra que contenga el patrón, Grep solo imprimirá la palabra por sí misma. Hace lo mismo para líneas enteras con el -x flag, por lo que si está buscando una frase o una sola línea en un archivo de configuración, eso realmente puede ayudar.

Si te interesa investigar todo Grep puede hacer, ejecutar man grep en una terminal para la documentación completa. Este artículo cubrió los conceptos básicos y todo lo que normalmente necesitará de esta poderosa herramienta. Comparta con nosotros si conoce algún uso poderoso del comando Grep.

Credito de imagen: Shell script puntos de interés a coordenadas

Experto Geek - Tu Guía en Tendencias Tecnológicas