awk (también escrito como Awk y AWK) es una utilidad que permite a un programador escribir programas pequeños pero efectivos en forma de declaraciones que definen patrones de texto que se deben buscar en cada línea de un documento y la acción que se debe realizar. se toma cuando se encuentra una coincidencia dentro de una línea. awk viene con la mayoría de los sistemas operativos basados en UNIX, como Linux, y también con algunos otros sistemas operativos, como Windows 95/98 / NT.
Un programa awk se compone de patrones y acciones que se realizarán cuando se encuentre una coincidencia de patrón. awk escanea las líneas de entrada secuencialmente y examina cada una para determinar si contiene un patrón que coincida con uno especificado por el usuario. Cuando se encuentra el patrón coincidente, awk sigue las instrucciones del programa. Por ejemplo, awk podría escanear texto en busca de una parte crítica y reformatear el texto contenido en él de acuerdo con el comando del usuario. Si no se especifica ningún patrón, el programa ejecutará el comando en todos los datos de entrada.
awk divide cada línea en campos, que son grupos de caracteres con espacios que actúan como separadores para que una palabra, por ejemplo, sea un campo. Una cadena está encerrada en barras invertidas y las acciones a realizar están encerradas entre llaves. Las líneas están numeradas en orden de aparición, con "0" que se refiere a toda la línea. "$" es el símbolo del campo. Entonces, por ejemplo, para buscar una línea que contenga la palabra "nuez moscada" e imprimir cada línea en la que aparece la palabra, el programa awk consistiría en:
/ nuez moscada / {print $ 0}.
El nombre "awk" se deriva de los nombres de sus tres desarrolladores: Alfred Aho, Peter Weinberger y Brian Kernighan. Fue desarrollado a partir de la sintaxis grep, C y sed, una combinación que permite desarrollar rápidamente programas complejos. awk se utiliza con frecuencia para la creación de prototipos. Las versiones de awk incluyen awk de interfaz de sistema operativo portátil, nuevo awk (Nawk) y GNU awk (Gawk). El lenguaje Practical Extraction and Reporting Language se desarrolló como una versión mejorada de awk, con la que Perl es compatible con versiones anteriores. (als