AWK es un lenguaje de programación diseñado para procesar datos basados en texto, ya sean ficheros o flujos de datos. El nombre AWK deriva de los apellidos de los autores: Alfred Aho, Peter Weinberger, y Brian Kernighan.
awk, cuando está escrito todo en minúsculas, hace referencia al programa de Unix que interpreta programas escritos en el lenguaje de programación AWK.
AWK es ejemplo de un lenguaje de programación que usa ampliamente el tipo de datos de listas asociativas (es decir, listas indexadas por cadenas clave), y expresiones regulares. El poder, brevedad y limitaciones de los programas de AWK y los guiones de sed inspiraron a Larry Wall a escribir Perl. Debido a su densa notación, todos estos lenguajes son frecuentemente usados para escribir programas de una linea.
Veamos un ejemplo practico antes de pasar a una conotacion mas amplia del lenguaje AWK. Supongamos que tenemos un archivo de texto como el que sigue:
Mario DF Enero Ingeniero 26 Jorge Buenos Aires Diciembre Derecho 32 Luis Caracas Agosto Medico 27 Pedro Copa Cabana Marzo Dentista 40
pero solo deseamos seleccionar el nombre y edad, entonces solo debemos escribir en una Terminal
awk '{print $1,$5}' > data.txt
y nos creara un archivo data.txt como el que sigue
Mario 26 Jorge 32 Luis 27 Pedro 40
Ahora bien si lo que deseamos es ordenar las columnas del archivo de otro modo es tan simple como hacer, para el archivo original
awk '{print $1,$5,$2,$4,$3}' > data.txt
y nos creara un archivo data.txt como el que sigue
Mario 26 DF Ingeniero Enero Jorge 32 Buenos Aires Derecho Diciembre Luis 27 Caracas Medico Agosto Pedro 40 Copa Cabana Dentista Marzo
Si quieren conocer un poco mas solo sigan leyendo.




