Una guía rápida para escribir comandos y scripts “AWK

Share on facebook
Share on twitter
Share on linkedin
Share on telegram
Share on whatsapp
Share on email
Share on print
VALORACIÓN DEL ARTÍCULO:
5/5


El comando awk es un método poderoso para procesar o analizar archivos de texto, en particular archivos de datos organizados por líneas (filas) y columnas.

Los comandos simples awk pueden ejecutarse desde la línea de comandos. Las tareas más complejas deben escribirse como programas awk (los llamados scripts awk) en un archivo.

El formato básico de un comando awk es el siguiente:

 awk 'pattern {action}' input-file> output-file

Esto significa: tomar cada línea del archivo de entrada; si la línea contiene el patrón, aplicar la acción a la línea y escribir la línea resultante en el archivo de salida. Si se omite el patrón, la acción se aplica a todas las líneas. Por ejemplo:

 awk '{ print $5 }' table1.txt> output1.txt

Esta declaración toma el elemento de la quinta columna de cada línea y lo escribe como una línea en el archivo de salida "output.txt". 4) La variable "$4" corresponde a la segunda columna. Del mismo modo, puede acceder a la primera, segunda y tercera columna, con $1, $2, $3, etc. Por defecto, se supone que las columnas están separadas por espacios o tabulaciones (el llamado espacio en blanco). Por lo tanto, si el archivo de entrada "table1.txt" contiene estas líneas:

1, Justin Timberlake, Título 545, Precio $7.30
2, Taylor Swift, Título 723, Precio $7.90
3, Mick Jagger, Título 610, Precio $7.90
4, Lady Gaga, Título 118, Precio $7.30
5, Johnny Cash, Título 482, Precio $6.50
6, Elvis Presley, Título 335, Precio $7.30
7, John Lennon, Título 271, Precio $7.90
8, Michael Jackson, Título 373, Precio $5.50

Entonces el comando escribirá las siguientes líneas en el archivo de salida “output1.txt”:

545,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>i723,
610,
118,
482,
335,
271,
373,

Si el separador de columna es algo distinto a espacios o tabulaciones, como una coma, puede especificarlo en la sentencia awk de la siguiente manera:

 awk -F, '{ print $3 }' table1.txt> output1.txt

Esto seleccionará el elemento de la columna 3 de cada línea si se considera que las columnas están separadas por una coma. Por lo tanto, el resultado, en este caso, sería:

 Título 545
> Título 545
Título 610
Título 118
Título 482
Título 335
Título 271
Título 373

La lista de sentencias dentro de los corchetes (‘{‘,’}’) se llama bloque. Si se pone una expresión condicional delante de un bloque, la sentencia dentro del bloque se ejecutará sólo si la condición es verdadera.

 awk '$7==="$7.30" { print $3 }'' table1.txt

En este caso, la condición es $7==”$7.30″, lo que significa que el elemento de la columna 7 es igual a $7.30. La barra invertida delante del símbolo del dólar se utiliza para evitar que el sistema interprete $7 como una variable y en su lugar tome el símbolo del dólar literalmente.

Así que esta declaración awk imprime el elemento en la tercera columna de cada línea que tiene un “$7.30” en la columna 7.

También puede utilizar expresiones regulares como condición. Por ejemplo:

< awk ‘/30/ { print $3 }’ table1.txt

La cadena entre las dos barras (‘/’) es la expresión regular. En este caso, es sólo la cadena “30”. Esto significa que si una línea contiene el string “30”, el sistema imprime el elemento en la tercera columna de esa línea. El resultado en el ejemplo anterior sería:

 Timberlake,
Gaga,
Presley,

Si los elementos de la tabla son números, awk puede realizar cálculos sobre ellos como en este ejemplo:

 awk '{ print ($2 * $3) + $7 }'

Además de las variables que acceden a los elementos de la fila actual ($1, $2, etc.) está la variable $0 que se refiere a la fila completa (línea), y la variable NF que mantiene el número de campos.

También puede definir nuevas variables como en este ejemplo:

< awk ‘{ sum=0; para (col=1; col=1; col<=NF; col++) sum += $col; print sum; }'

Calcula e imprime la suma de todos los elementos de cada fila.

Las declaraciones Awk se combinan frecuentemente con comandos sed.

Deja un comentario

TAMBIÉN TE INTERESA

como-desinstalar-mcafee-del-ordenador

3 opciones para desinstalar Mcafee al completo

Este es un artículo que te enseñará a desinstalar Mcafee al completo de tu ordenador. Seguro que si te has comprado un PC, habrás notado que hay programas o aplicaciones que vienen por defecto y una de ellas es el antivirus Mcafee.   Este antivirus es uno de los más conocidos y populares del mercado,

Kodi

Los 3 mejores Addons Kodi del momento

Si tienes un Kodi, es posible que tengas varios Addons. En este artículo te sugerimos los mejores Addons Kodi que existen en la actualidad.   Aunque ya hemos hablado de este tipo de programas, lo primero que vamos a proponerte es recordar que Kodi es una aplicación para todo tipo de dispositivos que permite abrir

607123000 quien es

607123000, quién es y por qué te llaman tanto desde este número

Seguro que últimamente has recibido llamadas de este número: 607123000. En este artículo te mostraremos quién es, porque tanta insistencia y cómo evitar que te vuelvan a llamar si es que lo consideras oportuno.   Índice de contenidos1 607123000, quién es1.1 Un teléfono Vodafone que puede parecerse a otro cualquiera1.2 Muy similar al clásico 123

pasos-para-instalar-certificado-digital-en-Chrome

Instalar el certificado digital en Chrome paso a paso

En este artículo te enseñamos a instalar tu certificado digital en Chrome para poder hacer las muchas gestiones que se pueden hacer con este documento electrónico.   Antes de pasar a este breve y sencillo tutorial, nos detendremos en otro proceso, el de la obtención del certificado digital. La solicitud y obtención de un certificado

desinstalar-aplicaciones-en-Mac

Cómo desinstalar aplicaciones en Mac fácilmente

Desinstalar aplicaciones en Mac es un proceso muy sencillo, aunque es lógico que muchos principiantes en este sistema operativa tengan sus dudas. Y es que cuando has estado toda la vida operando en entornos Windows u otros como Linux, puedes estar algo perdido en acciones tan básicas como instalar o desinstalar aplicaciones en Mac. Índice

discos-duros-externos

Discos duros externos, la guía de compra que necesitas

Todo el mundo necesita discos duros externos. Aunque hoy los ordenadores dispongan de mucha memoria interna y la nube se haya consolidado en el mercado, estos aparatos siguen siendo necesarios para guardar todo tipo de información.   De eso se trata, de guardar la mucha información que hoy disponemos en archivos. A diferencia de la