0% encontró este documento útil (0 votos)
4 vistas5 páginas

03.5 - Uso Del Comando Awk

awk es un lenguaje de programación diseñado para el procesamiento de texto y análisis de datos estructurados, ideal para trabajar con datos tabulares. Su estructura básica incluye condiciones y acciones para procesar líneas de archivos, permitiendo realizar operaciones como filtrado, conteo y cálculos matemáticos. Aunque es eficiente para manejar grandes volúmenes de datos, puede presentar una curva de aprendizaje para usuarios nuevos en comparación con herramientas más modernas.

Cargado por

frankabellenza2
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
4 vistas5 páginas

03.5 - Uso Del Comando Awk

awk es un lenguaje de programación diseñado para el procesamiento de texto y análisis de datos estructurados, ideal para trabajar con datos tabulares. Su estructura básica incluye condiciones y acciones para procesar líneas de archivos, permitiendo realizar operaciones como filtrado, conteo y cálculos matemáticos. Aunque es eficiente para manejar grandes volúmenes de datos, puede presentar una curva de aprendizaje para usuarios nuevos en comparación con herramientas más modernas.

Cargado por

frankabellenza2
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 5

03.

5- Uso del comando


awk
¿Qué es awk ?
awk es un lenguaje de programación especializado en el procesamiento
de texto y análisis de datos estructurados. Es ideal para trabajar con
datos tabulares o texto que tiene delimitadores, como archivos CSV,
registros de logs, y más.

Fue desarrollado por Alfred Aho, Peter Weinberger y Brian Kernighan


(de ahí su nombre: Aho, Weinberger, Kernighan).
Su característica clave es procesar texto por líneas y campos de
entrada.

Formato Básico de awk


Copy
awk 'condición {acción}' archivo

1. condición : Es un filtro para seleccionar qué líneas se procesan.


2. acción : Lo que quieres hacer con las líneas seleccionadas.
3. archivo : Archivo de entrada (o entrada estándar).

Por defecto:

Si no se especifica una condición, se procesan todas las líneas.


Si no se especifica una acción, imprime la línea completa.

Ejemplo Básico
Copy
awk '{print $1}' archivo.txt

Esto imprime el primer campo (palabra o columna) de cada línea del


archivo.

Estructura y Componentes de awk


1. Patrones y Acciones
Un patrón determina qué líneas del archivo se procesan.
La acción especifica qué hacer con esas líneas.
Ejemplo:

Copy
awk '/error/ {print $0}' archivo.log

Selecciona líneas que contienen "error".


$0 es toda la línea.
2. Campos ( $1 , $2 , ...)
awk divide cada línea en campos usando un delimitador (por
defecto, el espacio o tabulación).
$1 : Primer campo.
$2 : Segundo campo.
$0 : Línea completa.
Ejemplo:

Copy
echo "Nombre Edad Ciudad" | awk '{print $2}'

Salida:

Copy
Edad

3. Delimitadores Personalizados ( -F )
Cambia el delimitador de campo con la opción -F .
Ejemplo:

Copy
echo "a,b,c" | awk -F',' '{print $2}'

Salida:

Copy
b

4. Condiciones
Puedes usar operadores para establecer filtros:
== : Igual.
!= : Diferente.
> , < : Mayor o menor.
~ : Coincidencia con expresiones regulares.
!~ : No coincide con expresiones regulares.
Ejemplo:

Copy
awk '$3 > 30 {print $1, $3}' archivo.txt

Imprime el primer y tercer campo si el tercero es mayor que


30.
5. Cálculos Matemáticos
awk puede realizar operaciones matemáticas:

Copy
echo "5 10" | awk '{print $1 + $2}'

Salida:

Copy
15

6. Variables Integradas
NR : Número de línea actual.
NF : Número de campos en la línea actual.
$0 : Línea completa.
Ejemplo:

Copy
awk '{print NR, NF, $0}' archivo.txt

Muestra el número de línea, la cantidad de campos y la línea


completa.
7. Instrucciones BEGIN y END
BEGIN se ejecuta antes de procesar las líneas.
END se ejecuta al final.
Ejemplo:

Copy
awk 'BEGIN {print "Inicio"} {print $0} END {print "Fin"}' archivo.txt

Casos de Uso Comunes


1. Buscar y Filtrar

Copy
awk '/ERROR/ {print $0}' log.txt

Imprime líneas que contienen "ERROR".


2. Contar Líneas

Copy
awk 'END {print NR}' archivo.txt

Muestra el número total de líneas en un archivo.


3. Sumar Valores
Copy
awk '{suma += $2} END {print suma}' archivo.txt

Suma los valores del segundo campo.


4. Imprimir Campos Específicos

Copy
awk '{print $1, $3}' archivo.txt

Imprime el primer y tercer campo de cada línea.


5. Procesar Archivos CSV

Copy
awk -F',' '{print $1, $3}' archivo.csv

Trabaja con archivos delimitados por comas.

Ventajas de awk
Procesa archivos grandes rápidamente.
Integra lógica y cálculos en un solo comando.
Funciona bien con flujos de datos en tuberías ( | ).

Desventajas
Tiene una curva de aprendizaje para comandos avanzados.
Puede ser menos intuitivo que herramientas modernas como Python
para tareas complejas.

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy