Tipus | utilitat UNIX, llenguatge script, programació procedimental i data-driven programming (en) |
---|---|
Data de creació | 1977 |
Disseny | Alfred Aho i Brian Kernighan |
Desenvolupador | Alfred Aho, Brian Kernighan i Peter Weinberger |
Epònim | Alfred Aho, Brian Kernighan i Peter Weinberger |
Paradigma de programació | data-driven programming (en) i programació procedimental |
Darrera versió estable | IEEE Std 1003.1-2008 |
Influenciat per | C, Snobol i Bourne Shell |
Codi font | Codi font |
Etiqueta d'Stack Exchange | Etiqueta |
El llenguatge de programació awk és un llenguatge interpretat especialment dissenyat per al tractament de fitxers de text (o text procedent d'un filtre o pipe). El nom del llenguatge ve de les inicials del cognoms dels seus tres autors originals: Aho, Weinberger i Kernighan;[1] a la pràctica el nom es pren pel nom en anglès d’Alca torda (un ocell àrtic), per exemple tal com apareix a la portada del llibre de referència The AWK Programming Language.
L'awk fa servir strings, expressions regulars (regexp), i arrays associatius (hash). Incorpora tot de conceptes implícits com el bucle principal d'entrada, delimitador de camp i delimitador de registre, parsing automàtic de camps, obrir i tancar fitxers, etc. Això facilita la creació de programes molt compactes d'una sola línia.
L'awk és l'antecessor directe del perl,[2] i tot i que és un llenguatge força senzill, resulta molt potent i ràpid per al tractament de fitxers de text. L'intèrpret d'awk demana molt pocs recursos al sistema, i la càrrega i interpretació del programa és més ràpida que amb un intèrpret de perl (és clar que aquest altre pot fer moltes altres coses com accedir a una base de dades o establir connexions de xarxa).
L'awk és una utilitat present en qualsevol entorn Unix estàndard. Existeixen implementacions d'awk per a gairebé tots els sistemes operatius (unix, linux, ms-windows, hp-mpe, etc.). Existeix una versió GNU anomenada gawk, que incorpora algunes extensions interessants al llenguatge estàndard.