¿Qué es el comando grep en Linux?
El comando grep, si ya estas familiarizado con la consola, es un comando que nos sirve para buscar palabras, símbolos, letras, números y cualquier patrón dentro de un archivo. Es muy común ya que puede ser que en un archivo gigante, como por ejemplo en un archivo que contenga la traducción de una película importante nosotros hayamos usado la palabra man cuando era men. En ese caso, grep nos ayuda a encontrar cuantas veces usamos esa palabra y la linea en donde es usada. Además de que sirve para otras cosas. Entonces, podemos decir que es sumamente útil y de seguro tu le encontraras muchos usos.
¿Por qué es útil el comando grep en las regExp?
Bueno, en los servidores grandes en donde muchas personas entran y hay muchos archivos importantes, se utilizan las regExp y el problema es que todo es en la consola, no hay GUI (interfaz grafica). Es aquí en donde se utilizan las regExp y es en la consola donde se utiliza el comando grep.
¿Cómo utilizar el comando grep en Linux?
Si estás ejecutando Linux en tu computadora, simplemente abre el terminal.
La sintaxis del comando grep al buscar un solo archivo es así:
grep [opciones] pattern [ARCHIVO]
Puedes ver la documentación y explicaciones de varias opciones ejecutando este comando en la línea de comando:
man grep
// o tambien conhelpgrep -help
Como puedes ver, el comando nos ofrece muchas posibilidades. Sin embargo, las opciones más importantes y comunes son:
Ejemplos útiles del comando grep en Linux
Veamos algunos ejemplos prácticos del comando grep en Linux.
Encontrar una palabra en un archivo de texto
Para buscar una palabra en un archivo de texto, simplemente escribe el comando:
grepbusqueda archivo
grepcommandgrep.txt
// tambien se puede usar con comillas simples
grep'command'grep.txt
Encontrar una palabra sin tener en cuenta las mayúsculas y minúsculas
Para este caso solo tenemos que usar una flag antes, de ese modo podemos ser non-case sensitive
grep -i'a' grep.txt
De eso modo me buscada letras que sean a o A.
Conteo de palabras que coinciden con la búsqueda
Usando el comando grep puedes saber cuántas veces se usa una palabra en el archivo de texto. Simplemente agrega la opción -c.
grep -c búsqueda archivo
Encontrar una palabra en un conjunto de archivos
También es posible buscar en varios archivos con un solo comando:
grep -l palabra_a_buscar ./*
En el terminal, se mostrarán los archivos que contienen la palabra que buscaste.
Hay algun comando en el que le pueda pasar una variable en lugar de un archivo, es que necesito capturar una serie de strings que estan en la variable en un programa de bash?