grep-command-linux

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

¿Por qué no probar uno de los usos más comunes de Grep, como encontrar un archivo en un directorio? Mira en tu carpeta “~ / Descargas” para ver cualquier imagen “jpg”.

grep-command-linux-02

ls ~/Descargas | grep .jpg

Grep los listará a todos y resaltará la parte “.jpg” ya que es lo que buscaste.

grep-command-linux-03

Canaliza la salida (con el comando “|”) de casi cualquier comando en Grep. Si tiense un archivo de texto sin formato, úsalo y coloca el resultado en Grep para encontrar una palabra específica.

cat file.txt | grep word

Grep imprimirá cualquier línea del archivo que contenga la palabra que le indicaste que buscara.

grep-command-linux-04

Los sistemas tipo Unix distinguen entre mayúsculas y minúsculas, lo que significa que “Ubuntu” es completamente diferente a “ubuntu“. Eso puede ser un problema cuando se busca algo. Grep tiene un distintivo para eliminar el problema. Agrega el distintivo -i a tu búsqueda, y Grep ignorará el caso.

ls ~/Downloads | grep -i Ubuntu
grep -i palabraabuscar /ruta/a/file.txt

Grep puede buscar en más de un archivo o directorio al mismo tiempo. Ten cuidado, si buscas nombres de archivos, Grep también buscará los archivos por defecto. El indicador -r le dice a Grep que busque de forma recursiva.

ls ~/Descargas | grep -r .deb

You can pair this with other flags, too. You may want to include the -I flag when doing recursive searches to keep Grep from looking through binary files.

ls ~/Downloads | grep -iIr .deb

También puedes decirle a Grep que busque todo lo que no contenga el patrón especificado. Esto sería bueno en casos donde necesitas encontrar un error o tienes un directorio con muchos archivos de uno o dos tipos.

grep -rv '192.168.1.110' /etc/nginx

También podría ser útil decirle a Grep que busque palabras o líneas completas, en lugar de cualquier cosa que contenga un determinado patrón. Imagina que estás buscando una cadena de caracteres que sea común como parte de una palabra, pero necesitas que esté separada. Por ejemplo, la palabra “it“. Obviamente, no habría muchas veces en las que realmente quisieras buscar un patrón como “it“, pero prueba el punto.

cat textfile.txt | grep -w it

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

Si estás interesado en investigar todo lo que Grep puede hacer, ejecuta man grep en una terminal para obtener la documentación completa.

 

Fuente: Original | maslinux

¿Quién está en línea?

Hay 47446 invitados y ningún miembro en línea