Por Rubaiat Hossain
Correo electrónico

El comando grep se usa para buscar cadenas en un archivo de texto. Aquí hay diez ejemplos de grep que pueden resultarle útiles.

El comando grep proporciona acceso a la utilidad grep, una poderosa herramienta de procesamiento de archivos que se utiliza para encontrar patrones en archivos de texto. Tiene muchos casos prácticos de uso y es sin duda uno de los comandos de Linux más utilizados. Esta guía ilustra algunos comandos grep de Linux simples pero útiles que tienen usos en el mundo real.

Archivo de ejemplo para demostración

Hemos creado un archivo de referencia para ayudar a los lectores a comprender grep de manera más eficaz. Puede crear una copia de este archivo emitiendo el siguiente comando de shell en su terminal.

gato <> archivo de prueba
Este es un archivo de texto simple que contiene
múltiples cadenas, así como algunos números de teléfono
(555) 555-1234 (567) 666-2345
y correo electrónico más direcciones web
[email protected]
https://google.com
ftp://mywebserver.com
FINAL
instagram viewer

1. Buscar texto en archivos

Para buscar un patrón de texto en un archivo, simplemente ejecute grep seguido del nombre del patrón. Además, especifique el nombre del archivo que contiene el texto.

archivo de prueba grep "email"

Este comando mostrará la línea en nuestro archivo de prueba que contiene la palabra Email. También puede buscar el mismo texto en varios archivos usando grep.

grep "ejemplo" / usr / share / dict / american-english / usr / share / dict / british-english

El comando anterior muestra todas las instancias de la palabra ejemplo en el inglés americano y Inglés británico archivos de diccionario.

2. Encuentra palabras de coincidencia exacta

El comando grep de Linux ilustrado en el ejemplo anterior también enumera líneas con coincidencias parciales. Use el comando que se proporciona a continuación si solo necesita las ocurrencias exactas de una palabra.

grep -w archivo de prueba de "cadena"

El -w o --word-regexp La opción de grep limita la salida solo a coincidencias exactas. Grep consta de algunos indicadores adicionales que también se pueden usar con el comando predeterminado.

Relacionada: ¿Cómo Grep obtuvo su nombre? La historia detrás de la creación de Grep

3. Ignorar distinciones de mayúsculas y minúsculas

De forma predeterminada, grep busca patrones distinguiendo entre mayúsculas y minúsculas. Sin embargo, es posible que desee desactivarlo si no sabe en qué caso es el patrón de antemano.

grep -i "este" archivo de prueba

Utilizar el -I o --ignorar caso opción para desactivar la distinción entre mayúsculas y minúsculas.

4. Cuente el número de patrones

El -C representa la bandera contar. Muestra el número de coincidencias que se encontraron para un patrón en particular. Los administradores pueden usar esto para recuperar información específica sobre el sistema.

Puedes canalizar el comando ps con grep para contar los procesos que pertenecen al usuario actual.

ps -ef | grep -c $ USER

El siguiente comando muestra el número de MP3 archivos presentes en un directorio.

ls ~ / Música | grep -c .mp3

5. Mostrar números de línea que contengan coincidencias

Es posible que desee encontrar los números de línea que contienen una determinada coincidencia. Utilizar el -norte o --número de línea opción de grep para lograr esto.

cat / etc / passwd | grep -n rubaiat

Esta opción es particularmente útil para depurar códigos fuente y archivos de registro de resolución de problemas. Para mostrar todos los números de las líneas en el ~ / .vimrc que se utilizan para configurar el editor de texto Vim:

grep -n "establecer" ~ / .vimrc

6. Buscar nombres de archivo mediante extensiones

Para obtener una lista de todos los MP3 archivos presentes en el ~ / Música directorio:

ls ~ / Música / | grep ".mp3"

Puedes reemplazar .mp3 con cualquier otra extensión para localizar archivos específicos. El siguiente comando enumera todos los php archivos presentes en el directorio de trabajo actual.

ls | grep ".php"

7. Encontrar patrones en archivos comprimidos

El comando grep de Linux también puede encontrar patrones dentro de archivos comprimidos. Necesitará utilizar el zgrep comando para hacer esto, sin embargo. Primero, cree un archivo comprimido de nuestro archivo de prueba escribiendo:

archivo de prueba gzip

Ahora, puede buscar texto u otros patrones dentro del archivo resultante.

zgrep email test-file.gz

8. Buscar direcciones de correo electrónico

Los administradores también pueden enumerar las direcciones de correo electrónico de los archivos de texto mediante el comando grep de Linux. El siguiente ejemplo hace esto buscando un patrón de expresión regular.

grep '^ [a-zA-Z0-9] \ + @ [a-zA-Z0-9] \ + \. [a-z] \ {2, \}' archivo de prueba

Puede encontrar expresiones regulares para realizar trabajos similares o puede crearlas usted mismo si sabe cómo funcionan.

9. Encuentra números de teléfono usando Grep

Puede utilizar expresiones regulares grep para filtrar números de teléfono de un archivo de texto. Tenga en cuenta que tendrá que modificar el patrón para que coincida con el tipo de números de teléfono que necesita.

grep '\ (([0-9] \ {3 \}) \ | [0-9] \ {3 \} \) [-] \? [0-9] \ {3 \} [-] \? [0-9] \ {4 \} 'archivo de prueba

El comando antes mencionado filtra los números de teléfono estadounidenses de diez dígitos.

10. Buscar URL de archivos de origen

Podemos aprovechar el poder de grep para enumerar las URL que se encuentran en archivos de texto. El siguiente comando imprime todas las URL presentes en el archivo de prueba.

grep -E "^ (http | https | ftp): [\ /] {2} ([a-zA-Z0-9 \ - \.] + \. [a-zA-Z] {2,4}) "archivo de prueba

Estamos usando de nuevo el -MI opción para expresiones regulares extendidas. También puede utilizar el garza comando para evitar agregar esto.

egrep "^ (http | https | ftp): [\ /] {2} ([a-zA-Z0-9 \ - \.] + \. [a-zA-Z] {2,4})" prueba -expediente

Dominar el comando Grep de Linux

Hemos presentado varios ejemplos útiles del comando grep de Linux para abordar problemas del mundo real. Aunque estos ejemplos ilustran el poder de grep para el procesamiento de texto, necesitará dominar las expresiones regulares si quiere ser súper productivo con grep.

A veces, los usuarios de Linux se encuentran con determinadas situaciones en las que no pueden recordar las distintas opciones relacionadas con un comando. Con suerte, el sistema operativo Linux le proporciona formas de obtener ayuda de línea de comandos para casi todas las utilidades del sistema.

Correo electrónico
7 formas de obtener ayuda de la línea de comandos en Linux

Todos los comandos esenciales para aprender sobre los comandos de Linux desde la línea de comandos

Leer siguiente

Temas relacionados
  • Linux
  • Linux
  • Comandos de Linux
Sobre el Autor
Rubaiat Hossain (15 artículos publicados)

Rubaiat es un licenciado en informática con una gran pasión por el código abierto. Además de ser un veterano de Unix, también se dedica a la seguridad de redes, la criptografía y la programación funcional. Es un ávido coleccionista de libros de segunda mano y tiene una admiración interminable por el rock clásico.

Más de Rubaiat Hossain

Suscríbete a nuestro boletín

¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Un paso más…!

Confirme su dirección de correo electrónico en el correo electrónico que le acabamos de enviar.

.