20 Ejemplos de comando EGREP de Linux
- 2915
- 861
- Claudia Baca
Breve: En esta guía, discutiremos algunos de los ejemplos prácticos del comando EGREP. Después de seguir esta guía, los usuarios podrán realizar una búsqueda de texto de manera más eficiente en Linux.
¿Alguna vez ha estado frustrado porque no puede encontrar la información requerida en los registros?? Extraer la información requerida de un conjunto de datos grande es una tarea compleja y que requiere mucho tiempo.
Las cosas se vuelven realmente desafiantes si el sistema operativo no proporciona las herramientas adecuadas y aquí viene Linux para rescatarlo. Linux proporciona varias utilidades de filtro de texto como AWK, SED, cortar, etc.
Sin embargo, EGREP es una de las utilidades más potentes y comúnmente utilizadas para el procesamiento de texto en Linux, y vamos a discutir algunos ejemplos del municipal dominio.
El municipal El comando en Linux es reconocido por la familia del comando GREP, que se utiliza para buscar y hacer coincidir un patrón particular en los archivos. Funciona de manera similar a Grep -E (GREP extendido regex), pero en su mayoría busca un archivo en particular o incluso líneas para línea o imprime la línea en el archivo dado.
La sintaxis del municipal El comando es el siguiente:
$ egrep [opciones] patrones [archivos]
Creemos un archivo de texto de muestra con el siguiente contenido para usar un ejemplo:
Muestra de $ Cat.TXTMuestra un archivo de texto
Aquí, podemos ver que el archivo de texto está listo. Ahora discutamos algunos ejemplos comunes que se pueden usar a diario.
1. Cómo encontrar un patrón en un solo archivo
Comencemos con un ejemplo simple de coincidencia de patrones, donde podemos usar el siguiente comando para buscar una cadena profesional
en un muestra.TXT archivo:
Muestra de profesionales de $ EGREP.TXTBuscar cadena en el archivo
Aquí, podemos ver que el comando imprime la línea que contiene el patrón especificado.
2. Cómo resaltar los patrones coincidentes en el archivo
Podemos hacer que la salida sea más informativa resaltando el patrón coincidente. Para lograr esto, podemos usar el --color
opción del municipal dominio. Por ejemplo, el siguiente comando resaltará el texto profesionales
en color rojo:
$ egrep -color = muestra de profesionales automáticos.TXTResaltar texto en el archivo
Aquí, podemos ver que el mismo resultado es más informativo en comparación con el anterior. Además, podemos identificar fácilmente que la palabra profesionales
se repite dos veces.
En la mayoría de los sistemas Linux, la configuración anterior está habilitada de forma predeterminada utilizando el siguiente alias:
$ alias egrep = "egrep -color = auto"
3. Cómo encontrar un patrón en varios archivos
El municipal El comando acepta múltiples archivos como un argumento, que nos permite buscar un patrón particular en varios archivos. Entendamos esto con un ejemplo.
Primero, cree una copia del muestra.TXT archivo:
Muestra de $ CP.copia de muestra txt.TXT
Ahora busca el patrón profesionales
En ambos archivos:
Muestra de profesionales de $ EGREP.copia de muestra txt.TXTBuscar cadena en varios archivos
En el ejemplo anterior, podemos ver el nombre del archivo en la salida, que representa la línea coincidente de ese archivo.
4. Cómo contar las líneas de coincidencia en el archivo
A veces solo necesitamos averiguar si el patrón está presente o no en el archivo. Si es así, entonces en cuántas líneas está presente? En tales casos, podemos usar el -C
Opción del comando.
Por ejemplo, el siguiente comando se mostrará 1 Como salida porque la palabra profesionales
está presente en una sola línea.
Muestra de profesionales de $ egrep -c.TXT 1
5. Cómo imprimir solo líneas coincidentes en el archivo
En el ejemplo anterior, vimos que el -C
La opción no cuenta el número de ocurrencias del patrón. Por ejemplo, la palabra profesionales
aparece dos veces en la misma línea pero el -C
La opción lo trata solo como una sola coincidencia.
En tales casos, podemos usar el -O
opción del comando para imprimir el patrón coincidente únicamente. Por ejemplo, el siguiente comando mostrará la palabra profesionales
En dos líneas separadas:
Muestra de profesionales de $ egrep -o.TXT
Ahora, cuentemos las líneas usando el comando wc:
Muestra de profesionales de $ egrep -o.txt | WC -LImprimir líneas coincidentes en el archivo
En el ejemplo anterior, hemos utilizado la combinación de municipal y WC comandos para contar el número de ocurrencias del patrón particular.
6. Cómo encontrar un patrón ignorando el caso
Por defecto, municipal Realiza la coincidencia de patrones de forma sensible a la caja. Significa palabras: nosotros, nosotros, nosotros, y somos tratados como diferentes palabras. Sin embargo, podemos hacer cumplir la búsqueda insensible a los casos utilizando el -i
opción.
Por ejemplo, en la siguiente coincidencia del patrón de comando tendrá éxito para el texto nosotros
y Nosotros
:
$ egrep -i muestras.TXTCadena insensible al caso de búsqueda
7. Cómo excluir patrones parcialmente coincidentes
En el ejemplo anterior, vimos que el municipal El comando realiza una coincidencia parcial. Por ejemplo, cuando buscamos el texto nosotros
Luego, la coincidencia de patrones también tuvo éxito para otros textos. Como web, sitio web y.
Para superar esta limitación, podemos -w
Opción, que hace cumplir toda la palabra coincidencia.
$ egrep -w muestras.TXTImprima solo patrones coincidentes en el archivo
8. Cómo invertir la coincidencia de patrones en el archivo
Hasta ahora, usamos el municipal Comando para imprimir las líneas en las que está presente el patrón dado. Sin embargo, a veces queremos realizar la operación de manera opuesta.
Por ejemplo, es posible que deseemos imprimir las líneas en las que el patrón dado no está presente. Podemos lograr esto con la ayuda del -V
opción:
$ egrep -v muestras.TXTInvertir la coincidencia de patrones en el archivo
Aquí, podemos ver que el comando imprime toda la línea que no contiene el texto nosotros
.
9. Cómo encontrar el número de línea del patrón
Podemos usar el -norte
Opción del comando para habilitar la numeración de línea, que muestra el número de línea en la salida cuando la coincidencia de patrones tiene éxito. Este simple truco hace que la salida sea más significativa.
Muestra de profesionales de $ egrep -n.TXTImpresión Número de patrón coincidente
En la salida anterior, podemos ver que la palabra profesionales
está presente en el Quinto línea.
10. Cómo realizar la coincidencia de patrones en modo tranquilo
En modo tranquilo, el municipal El comando no imprime el patrón coincidente. Por lo tanto, tenemos que usar el valor de retorno del comando para identificar si la coincidencia de patrones tuvo éxito o no.
Podemos usar el -Q
Opción del comando para habilitar el modo tranquilo, que es útil mientras escribe scripts de shell.
Muestra de profesionales de $ egrep -q.Txt $ egrep -q muestra de patrón inexistente.TXTMatriota de patrones de búsqueda en modo tranquilo
En este ejemplo, el cero El valor de retorno indica la presencia del patrón, mientras que el valor no cero indica la ausencia del patrón.
11. Cómo mostrar líneas antes de la coincidencia del patrón
A veces, tiene sentido mostrar algunas líneas alrededor del patrón coincidente. Para tales escenarios, podemos usar el -B
opción del comando, que muestra norte líneas antes del patrón coincidente.
Por ejemplo, el siguiente comando imprimirá la línea para la cual la coincidencia del patrón tiene éxito, así como 2 líneas antes.
$ egrep -b 2 -n muestra de profesionales.TXTImprimir líneas antes de la coincidencia de patrones
En este ejemplo, hemos usado el -norte
opción para mostrar números de línea.
12. Cómo mostrar líneas después de la coincidencia del patrón
De manera similar, podemos usar el -A
opción del comando para mostrar líneas después de la coincidencia de patrón. Por ejemplo, el siguiente comando imprimirá la línea para la cual la coincidencia del patrón tiene éxito, así como las siguientes 2 líneas.
$ EGREP -A Muestra de profesionales de 2 -n.TXTImprimir líneas después de la coincidencia de patrones
13. Cómo mostrar líneas alrededor de la coincidencia del patrón
Además de esto, el municipal El comando admite el -C
opción que combina la funcionalidad de las opciones -A
y -B
, que muestra las líneas antes y después del patrón coincidente.
Muestra de profesionales de $ egrep -c 2 -n.TXTImprimir líneas alrededor de la coincidencia de patrones
14. Cómo encontrar un patrón en múltiples archivos de manera recursiva
Como se discutió anteriormente, podemos realizar una coincidencia de patrones en varios archivos. Sin embargo, la situación se vuelve complicada cuando los archivos están presentes en múltiples subdirectorios y los pasamos como argumentos de comando.
En tales casos, podemos realizar una coincidencia de patrones de manera recursiva utilizando el -riñonal
Opción como se muestra en el siguiente ejemplo.
Primero, cree 2 subdirectorios y copie el muestra.TXT Archivo en ellos:
Muestra de $ mkdir -p dir1/dir2 $ cp muestra.muestra de txt dir1/ $ cp.txt dir1/dir2/
Ahora, realicemos la operación de búsqueda de manera recursiva:
$ EGREP -R Profesionales Dir1Buscar cadena recursivamente en archivos
En el ejemplo anterior, podemos ver que la coincidencia del patrón tuvo éxito para el Dir1/Dir2/Muestra.TXT y dir1/muestra.TXT archivos.
15. Cómo hacer coincidir un solo personaje usando expresiones regulares
Podemos usar un punto (.)
personaje para que coincida con cualquier personaje, excepto el final de la línea. Por ejemplo, la siguiente expresión regular coincide con el texto Har, Hat y tiene:
$ EGREP "HA." muestra.TXTCoincidir con un solo carácter en el archivo
dieciséis. Cómo hacer coincidir cero o más ocurrencias de carácter
Podemos usar el asterisco (*)
para que coincidan con cero o más ocurrencias del personaje anterior. Por ejemplo, la siguiente expresión regular coincide con el texto que contiene una cadena nosotros
seguido de cero o más ocurrencias del personaje b
.
Muestra de $ egrep "web*".TXTCadena de coincidencia en el archivo de texto
17. Cómo hacer coincidir uno o más ocurrencias del personaje anterior
Podemos usar la ventaja (+)
para que coincidan con uno o más ocurrencias del personaje anterior. Por ejemplo, la siguiente expresión regular coincide con el texto que contiene la cadena nosotros
seguido de al menos una aparición del personaje b
.
Muestra de $ egrep "web+".TXTCadena de coincidencia por personaje en el archivo
Aquí, podemos ver que la coincidencia de patrones no tiene éxito para las palabras - nosotros
y eran
, La debida ausencia del personaje b
.
18. Cómo hacer coincidir el inicio de la línea
Podemos usar el careto (^)
para representar el inicio de la línea. Por ejemplo, la siguiente expresión regular imprime las líneas que comienzan con el texto Nosotros
:
$ EGREP "^Ejemplo".TXTImprimir texto coincidente con la línea de inicio
19. Cómo hacer coincidir el final de la línea
Podemos usar el dólar ps
para representar el final de la línea. Por ejemplo, la siguiente expresión regular imprime las líneas que terminan con el texto mi.
:
$ EGREP "E.$ "muestra.TXTImprimir texto coincidente con línea final
20. Cómo eliminar las líneas vacías en el archivo
Podemos usar el careto (^)
seguido inmediatamente por el dólar ps
Para representar la línea vacía. Usemos esto en una expresión regular para eliminar líneas vacías:
$ EGREP -N -V "^$" Muestra.TXTEliminar líneas vacías en el archivo
En la salida anterior, podemos ver que los números de línea 2, 4, 6, 8 y 10 no se muestran ya que están vacíos.
Conclusión
En este artículo, discutimos algunos ejemplos útiles de la municipal comandos. Uno puede usar estos ejemplos en la vida cotidiana para mejorar la productividad.
¿Conoce algún otro mejor ejemplo del comando EGREP en Linux?? Háganos saber sus puntos de vista en los comentarios a continuación.
- « Error de prohibido no tiene permiso para acceder / en este servidor Error
- Cómo instalar y configurar el firewall básico de Opnsense »