Guía para principiantes de Grep

Hay un poco de sabiduría informática clásica que dice «Si tienes un problema y decides resolverlo con expresiones regulares, ahora tienes dos problemas». Esto, por supuesto, se debe a la percepción de que las expresiones regulares son una complicada mezcla de personajes mágicos y vudú. Las expresiones regulares pueden permitirle lograr una lógica de programa elegante y concisa rápida y fácilmente, pero sólo una vez que haya aprendido a entender cómo funcionan y por qué. Casi cualquier sistema Linux o Mac viene con una poderosa herramienta de llamada de herramienta regex grep y aprender grep es una tarea esencial para cualquier usuario avanzado o administrador del sistema. Hoy, exploraremos algunas de las cosas que puedes hacer con grep y cómo puede ser una de las herramientas más poderosas en tu arsenal de geek.

Cómo funciona

En resumen, el trabajo de grep es buscar a través de un bloque de entrada. Eso es bastante vago, así que es mejor describirlo con el ejemplo. Supongamos que tiene un archivo de texto llamado distros.txt que tiene una lista de distribuciones de Linux, como la siguiente.

Debian – Distribución de servidores estable

Ubuntu – Distro de escritorio basado originalmente en Debian
.
Kubuntu – Usa el escritorio KDE en lugar de Gnome

Fedora – Continuación del sistema de escritorio gratuito Red Hat

Gentoo – Un sistema Linux rápido y basado en código fuente para usuarios profesionales

SuSE – Linux comercial propiedad de Novell
.
Mint – Distribución derivada de Ubuntu con software adicional restringido

Grep puede ser usado para leer el texto y filtrarlo para mostrar sólo las partes que usted desea. Si desea ver sólo las líneas que contienen la palabra «Ubuntu», ejecute el siguiente comando:

grep Ubuntu distros.txt

Guía para principiantes de Grep


(Su versión de grep puede o no incluir resaltado de color como en el ejemplo anterior)

Sensibilidad de mayúsculas y minúsculas

Habrás notado que nuestra última búsqueda no ha devuelto a Kubuntu. A menos que se indique lo contrario, grep asumirá que has introducido tu expresión exactamente como querías, y esto se aplica a mayúsculas y minúsculas. Si busca «ubuntu» pero su archivo de texto contiene «Ubuntu», su búsqueda no encontrará nada. Para que la búsqueda no distinga entre mayúsculas y minúsculas, utilice el parámetro -i , como en

grep -i ubuntu distros.txt

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.

Guía para principiantes de Grep


Palabra completa

En la búsqueda anterior, se incluyeron todas las variantes de mayúsculas de la palabra «Ubuntu». Incluía Kubuntu porque contiene la palabra que buscaste. Es posible que desee incluir sólo la versión estándar, no Kubuntu o Edubuntu, etc. Si ese es el caso, puede decirle a grep que haga coincidir toda la palabra sólo pasando la opción -w .

grep -i ubuntu distros.txt

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.

Guía para principiantes de Grep


Exclusión

De la misma manera que puede usar grep para mostrar sólo las entradas que coinciden, también puede usarlo para mostrar todo PERO las entradas que coinciden. Para ampliar nuestras búsquedas anteriores, ahora podemos usar la opción -v para revertir nuestros resultados y sólo mostrar las líneas que no coinciden.

Guía para principiantes de Grep


Comodines

Grep tiene soporte completo para los comodines al hacer coincidir los patrones. Cuando utilice comodines y otros caracteres especiales, debe asegurarse de que su patrón de búsqueda está entre comillas, para que el intérprete de comandos de Linux no intente interpretarlos antes de que lo haga grep. Los comodines comunes incluyen * para grupos de caracteres y . para representar un solo carácter desconocido.

Guía para principiantes de Grep


Rangos

Si los comodines son un poco demasiado amplios para usted, puede especificar caracteres individuales o un rango para incluir en su búsqueda. Los caracteres entre corchetes se incluirán en su patrón de búsqueda. Por ejemplo, si tiene un archivo con una lista como

Punto 1 – manzanas

Punto 2 – Plátanos
Tema 3 – cocos
Punto 4 – Melocotones
Punto 5 – Uvas
Punto 6 – Albaricoque

Puede elegir un rango particular usando algo como

grep «Item[2-4]» items.txt>Itemas de texto

Grep es una herramienta inmensamente poderosa, y aprenderla a fondo puede dar sus frutos en todo tipo de formas. Entender grep también hace que sea mucho más sencillo pasar a otras potentes herramientas de consola como sed y awk. Entre estas tres herramientas, se puede hacer una cantidad asombrosa de magia de consola y script con mucho menos esfuerzo del que parece posible. Si eres un fan de grep, o te gustaría ver otras herramientas como sed y awk cubiertas aquí, por favor deja una nota en los comentarios.

Fuente: este post proviene de Vida Tecno, donde puedes consultar el contenido original.
¿Vulnera este post tus derechos? Pincha aquí.
Creado:
¿Qué te ha parecido esta idea?

Esta idea proviene de:

Y estas son sus últimas ideas publicadas:

Etiquetas: Linux

Recomendamos

Relacionado

Linux

Para facilitar las pruebas tanto en GNOME como en KDE desktop simultáneamente, decido instalar Kubuntu en mi VMware Server. He aquí una guía sobre cómo instalar Kubuntu en Ubuntu con VMware Server. En primer lugar, descargue e instale VMware. (la instrucción aquí ). A continuación, descargue el archivo iso de Kubuntu de http://www.kubuntu.org/download.php Inicie su VMware Server. Haga clic en  ...

Linux

Lo bueno de Linux y Ubuntu es que puedes configurarlo como quieras. A diferencia de Windows o Mac OS X, puedes personalizar Ubuntu como mejor te parezca. Aunque Canonical intenta hacer de Ubuntu una experiencia utilizable, especialmente para personas que no tienen mucha experiencia con Unix o Linux, a veces se quiere romper con la apariencia estándar de Ubuntu. Afortunadamente, esto es muy fácil d ...

Linux

El núcleo de Linux es una pieza compleja de ingeniería. Desde el arranque hasta el modo multiusuario de nivel 5, el núcleo de Linux inicializa y gestiona los recursos de un PC, incluyendo el procesador, la memoria, la red, la salida de vídeo y el almacenamiento local. Como el kernel trabaja con todos estos diferentes subsistemas y recursos, registra varios mensajes de alto nivel para que los admin ...

Linux

Windows puede ser el sistema operativo más popular del mundo, pero hay muchas razones para mirar más allá y considerar la posibilidad de probar algunas de las alternativas. Si alguna vez has considerado la idea de probar Linux, pero no te sientes cómodo limpiando Windows completamente de tu ordenador, así es como puedes arrancar Windows 8 y Linux para que cada vez que enciendas tu ordenador, pueda ...

Linux

ImageMagick es una suite de herramientas para Linux que le permite manipular imágenes desde la línea de comandos. El comando «convert» le permite realizar conversiones y transformaciones de imágenes sin embargo, hay varias otras herramientas incluidas en la suite, algunas de las cuales le permiten trabajar con los datos Exif en fotos JPEG. Es probable que su distribución de Linux ya teng ...

Linux

Las utilidades de línea de comandos como grep y ack-grep son excelentes para buscar en archivos de texto plano patrones que coincidan con una expresión regular específica . Pero, ¿ha intentado alguna vez utilizar estas utilidades para buscar patrones en un archivo PDF? ¡Bueno, no lo hagas! No obtendrá ningún resultado ya que estas herramientas no pueden leer archivos PDF; sólo leen archivos de te ...

Linux

Al categorizar las distribuciones de Linux, a menudo es útil especificar qué sistema de gestión de paquetes utiliza la distribución. Hay muchos sistemas de gestión de paquetes diferentes en uso, pero los dos más populares son probablemente los formatos.deb y.rpm. El primero viene de Debian y es usado por Ubuntu, mientras que el segundo fue desarrollado por RedHat. NixOS es una distribución Linux c ...

Linux

Desde el principio de los ordenadores, siempre han estado protegidos por algún tipo de contraseña para que los datos dentro del ordenador estén sanos y salvos. Independientemente de la protección, el problema tecnológico común es que casi todo el mundo olvida la contraseña de su cuenta de usuario, lo que esencialmente da acceso al ordenador y a los datos que contiene. Bueno, este caso no es difere ...

Linux

En la primera parte de esta serie, discutimos los pasos a seguir para descargar, instalar y poner en marcha la herramienta Net-SNMP. En esta parte nos centraremos en el aspecto de la configuración, explicando cómo se puede configurar el agente Net-SNMP, así como configurar la autenticación y encriptación de los mensajes transmitidos entre éste y el cliente. Configuración del agente Net-SNMP – ...

Linux

¿Alguna vez ha querido acceder a sus fotos desde cualquier lugar a través de la Web, pero no ha querido suscribirse a soluciones patentadas como Google Photos, Photo Bucket, etc.? Presentamos Lychee , una herramienta autohospedada que permite a los usuarios gestionar, subir y catalogar sus grandes colecciones de fotos. Funciona en cualquier servidor web que tenga Apache2 (o NGINX), PHP y MySQL. En ...