Los servidores que se basan en el sistema operativo Linux, casi nunca tienen una interfaz gráfica por cuestiones de seguridad. Por eso mismo, es muy importante que sepas como manipular el terminal y varios de los comandos de Linux, como Grep.
Una función realmente útil que puedes hacer con el terminal es buscar en un archivo de texto. Más que nada si trabajas con archivos de configuración de servicios como por ejemplo NTP.
A lo largo de este artículo, aprenderemos a utilizar el comando Grep en Linux (Unix) y veremos ejemplos útiles para el trabajo diario.
¿Cómo utilizar el comando grep en Linux?
Este comando pertenece a la familia Unix, y es una de las herramientas más útiles y versátiles disponibles. Lo que hace es buscar un patrón que definamos en un archivo de texto. Resumiendo un poco, con él podrás buscar un patrón o palabra y se imprimirá la línea o líneas que la abarquen.
Viéndolo así, puedes pensar que no es un comando tan útil, aun así, los administradores de sistemas que trabajan varios servicios con archivos de configuración lo emplean para averiguar o buscar líneas puntuales en estos archivos.
Lo primero que debes hacer, es conectarte al VPS utilizando SSH.
ssh tu-usuario@tu-servidor
En el caso de que estés ejecutando Linux en tu computadora, debes abrir el terminal.
La sintaxis para buscar un solo archivo es la siguiente:
grep [opciones] pattern [ARCHIVO]
- grep: la instrucción de comando
- [opciones]: modificadores del comando
- pattern: el patrón que deseamos encontrar con la búsqueda
- [ARCHIVO]: el archivo en el que realizas la búsqueda
Podrás visualizar la documentación y varias opciones al ejecutar el siguiente comando en la línea de comando:
grep --help
Este comando nos brinda varias posibilidades. Aun así, las más importantes son:
- -i: la búsqueda no diferenciará entre mayúsculas y minúsculas. Entonces, si buscas la palabra «auto» será lo mismo que «AUTO»
- -r: activa la búsqueda recursiva en el directorio actual
- -c: solo enseñará el número de líneas que concuerdan con el patrón solicitado
- -v: nos muestran las líneas que no concuerdan con el patrón solicitado
Ejemplos del comando grep
Ahora, pasemos a algunos ejemplos prácticos de este comando de Linux.
Encontrar una palabra en un archivo de texto
Lo único que debes hacer si quieres encontrar una palabra en un archivo de texto, es escribir el siguiente comando:
grep búsqueda archivo
- búsqueda: debe ser la palabra que buscas.
- archivo: archivo en el cual buscas la palabra
En este caso, buscamos la palabra command en un archivo llamado grep:
grep command grep
El resultado resaltará las líneas que concuerdan con la consulta de esta manera:
Encontrar una palabra sin preocuparte por las mayúsculas y minúsculas
Para realizar esto, es necesario que añadas la opción -i.
grep -i búsqueda archivo
Así de simple podrás encontrar una palabra sin tener que preocuparte por las mayúsculas y minúsculas.
Cantidad de palabras que concuerdan con la búsqueda
Con este comando también podrás saber la cantidad de veces que se utiliza una palabra en el archivo de texto. Lo único que debes hacer, es añadir la opción -c.
grep -c búsqueda archivo
Buscar varias palabras clave
Hasta el momento solo vimos ejemplos donde buscamos una sola palabra. Este comando admite varias consultas en un solo comando, el cual se vería así:
grep búsqueda1 archivo | grep búsqueda2 archivo
El comando es muy simple. Lo primero es buscar Búsqueda1 y luego de la barra, pasar a una segunda palabra: Búsqueda2
Buscar una palabra en un conjunto de archivos
Además, puedes buscar en múltiples archivos con un solo comando:
grep -l palabra_a_buscar ./*
En el terminal, visualizarás los archivos que tienen la palabra que has buscado.
Conclusión
El comando grep en Linux te será de gran ayuda si manejas muchos archivos de texto. Es por esto mismo, que se considera un comando muy versátil, con varias posibilidades de uso.
A lo largo de este tutorial hemos aprendido cuáles son las funciones más utilizadas y conocidas de este comando de Linux. Esperamos que te haya sido de utilidad.
Por último, no te olvides de visitar nuestro sitio web aquí.